1.异步的作用
假如一个应用中一个服务可能会调用多个依赖服务来处理业务,而这些依赖服务是可以同时调用的。如果顺序调用的话,需要耗时100ms,而并发调用只需要50ms,那么使用Java并发调用依赖服务,从而降低该服务的响应时间。其中Java提供的有:异步Future、异步Callback等。
2.异步编排CompletableFuture
该类是JDK 8 提供的新的异步编程思想,可以对多个异步处理进行编排,实现更复杂的异步处理。其内部使用ForkJoinPool实现异步处理。使用CompletableFuture可以把回调方式的实现转变为同步调用实现。
举例三个服务异步并发调用,然后对结果进行合并并处理,不阻塞住线程。
代码:
(待续......)