ElasticSearch Rpc-Server端处理流程

2018-04-30  本文已影响64人  秦汉邮侠

ES Rest/Rpc流程

Rpc-Server端处理流程

调试流程

调试代码

   @Test
     public void test1(){
          try {
               Settings settings = Settings.builder().put("cluster.name", "distribution_run").build();
               TransportClient client = new PreBuiltTransportClient(settings)
                       .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9300));
               GetResponse response = client.prepareGet("website", "blog", "AWMHVaesXwpGuvHHNcVg").execute().actionGet();
               //输出结果
               System.out.println(response.getSourceAsString());
               //关闭client
               client.close();
          } catch (UnknownHostException e) {

          }
          //QueryBuilder qb1 = QueryBuilders.matchAllQuery();
     }
        <dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>transport</artifactId>
            <version>5.6.9</version>
        </dependency>
        <dependency>
            <groupId>org.appenders.log4j</groupId>
            <artifactId>log4j2-elasticsearch-core</artifactId>
            <version>1.1.1</version>
        </dependency>
<?xml version="1.0" encoding="UTF-8"?>
<configuration status="OFF">
    <appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
    </appenders>
    <loggers>
        <logger name="com.relin.HelloLog4j" level="error" additivity="false">
            <appender-ref ref="Console"/>
        </logger>
        <root level="trace">
            <appender-ref ref="Console"/>
        </root>
    </loggers>
</configuration>

代码分析

    @Inject
    public TransportGetAction(Settings settings, ClusterService clusterService, TransportService transportService,
                              IndicesService indicesService, ThreadPool threadPool, ActionFilters actionFilters,
                              IndexNameExpressionResolver indexNameExpressionResolver) {
        super(settings, GetAction.NAME, threadPool, clusterService, transportService, actionFilters, indexNameExpressionResolver,
                GetRequest::new, ThreadPool.Names.GET);
        this.indicesService = indicesService;
    }
    public static final GetAction INSTANCE = new GetAction();
    public static final String NAME = "indices:data/read/get";
上一篇 下一篇

猜你喜欢

热点阅读