Search in sources :

Example 1 with InvokeChainQueryServerWorker

use of com.creditease.uav.invokechain.http.InvokeChainQueryServerWorker in project uavstack by uavorg.

the class InvokeChainProcessServer method start.

@SuppressWarnings({ "rawtypes", "unchecked" })
@Override
public void start() {
    // init cache manager
    String cacheServerAddress = this.getConfigManager().getFeatureConfiguration(this.feature, "store.addr");
    int minConcurrent = DataConvertHelper.toInt(this.getConfigManager().getFeatureConfiguration(this.feature, "store.concurrent.min"), 10);
    int maxConcurrent = DataConvertHelper.toInt(this.getConfigManager().getFeatureConfiguration(this.feature, "store.concurrent.max"), 50);
    int queueSize = DataConvertHelper.toInt(this.getConfigManager().getFeatureConfiguration(this.feature, "store.concurrent.bqsize"), 5);
    String password = this.getConfigManager().getFeatureConfiguration(this.feature, "store.concurrent.pwd");
    CacheManager cm = CacheManagerFactory.build(cacheServerAddress, minConcurrent, maxConcurrent, queueSize, password);
    this.getConfigManager().registerComponent(this.feature, "IVCCacheManager", cm);
    // init ES Client
    String esAddrStr = this.getConfigManager().getFeatureConfiguration(this.feature, "es.addr");
    String clusterName = this.getConfigManager().getFeatureConfiguration(this.feature, "es.clustername");
    ESClient client = new ESClient(esAddrStr, clusterName);
    this.getConfigManager().registerComponent(this.feature, "ESClient", client);
    // register invokechain index mgr
    new InvokeChainIndexMgr("InvokeChainIndexMgr", feature);
    // register slowoper index mgr
    new SlowOperIndexMgr("SlowOperIndexMgr", feature);
    // register invokechain collect handler
    new InvokeChainDataCollectHandler("JQ_IVC_CollectHandler", feature);
    // 注册重调用链action engine
    this.getActionEngineMgr().newActionEngine("SlowOperActionEngine", feature);
    // register slowoper collect handler
    new SlowOperDataCollectHandler("JQ_SLW_CollectHandler", feature);
    // run InvokeChainQueryServerWorker
    boolean isStartQueryServer = DataConvertHelper.toBoolean(this.getConfigManager().getFeatureConfiguration(this.feature, "http.enable"), true);
    if (isStartQueryServer == true) {
        int port = DataConvertHelper.toInt(this.getConfigManager().getFeatureConfiguration(this.feature, "http.port"), 7799);
        int backlog = DataConvertHelper.toInt(this.getConfigManager().getFeatureConfiguration(this.feature, "http.backlog"), 10);
        int core = DataConvertHelper.toInt(this.getConfigManager().getFeatureConfiguration(this.feature, "http.core"), 10);
        int max = DataConvertHelper.toInt(this.getConfigManager().getFeatureConfiguration(this.feature, "http.max"), 100);
        int bqsize = DataConvertHelper.toInt(this.getConfigManager().getFeatureConfiguration(this.feature, "http.bqsize"), 10);
        ivcQueryServerWorker = new InvokeChainQueryServerWorker("InvokeChainQueryServerWorker", feature, "qhandlers");
        ThreadPoolExecutor executor = new ThreadPoolExecutor(core, max, 30, TimeUnit.SECONDS, new ArrayBlockingQueue(bqsize));
        ivcQueryServerWorker.start(executor, port, backlog);
        if (log.isTraceEnable()) {
            log.info(this, "InvokeChainQueryServerWorker started");
        }
    }
}
Also used : SlowOperDataCollectHandler(com.creditease.uav.invokechain.collect.SlowOperDataCollectHandler) InvokeChainQueryServerWorker(com.creditease.uav.invokechain.http.InvokeChainQueryServerWorker) ArrayBlockingQueue(java.util.concurrent.ArrayBlockingQueue) ESClient(com.creditease.uav.elasticsearch.client.ESClient) CacheManager(com.creditease.uav.cache.api.CacheManager) InvokeChainDataCollectHandler(com.creditease.uav.invokechain.collect.InvokeChainDataCollectHandler) ThreadPoolExecutor(java.util.concurrent.ThreadPoolExecutor)

Aggregations

CacheManager (com.creditease.uav.cache.api.CacheManager)1 ESClient (com.creditease.uav.elasticsearch.client.ESClient)1 InvokeChainDataCollectHandler (com.creditease.uav.invokechain.collect.InvokeChainDataCollectHandler)1 SlowOperDataCollectHandler (com.creditease.uav.invokechain.collect.SlowOperDataCollectHandler)1 InvokeChainQueryServerWorker (com.creditease.uav.invokechain.http.InvokeChainQueryServerWorker)1 ArrayBlockingQueue (java.util.concurrent.ArrayBlockingQueue)1 ThreadPoolExecutor (java.util.concurrent.ThreadPoolExecutor)1