京东开源多任务编排框架AsyncTool

京东开源多任务编排框架AsyncTool

AsyncTool是一个由京东零售开源的项目,目的是解决微服务系统中经常会出现的调用场景:用户请求接口,需要调用其他多个微服务接口来获取数据,最终汇总一个最终结果返回给用户。

AsyncTool的主要功能是:

1)支持任意的多线程并行、串行、阻塞、依赖、回调的并行框架。可以任意组合各线程的执行顺序,并且带有全链路执行结果回调。

2)它是单机的,不支持分布式编排。

3)正在京东App后台使用,承受高并发和海量业务场景的检验,稳定运行2年+。

4)在京东集团内广泛使用。

800_auto

示例代码:

800_auto

        ParWorker w = new ParWorker();
        ParWorker1 w1 = new ParWorker1();
        ParWorker2 w2 = new ParWorker2();
        ParWorker3 w3 = new ParWorker3();

        WorkerWrapper<String, String> workerWrapper3 =  new WorkerWrapper.Builder<String, String>()
                .worker(w3)
                .callback(w3)
                .param("3")
           ...

点击查看剩余70%

{{collectdata}}

网友评论