异步编程的几种实现方式

异步编程是实现程序并发、依赖解耦的一种方式。异步的本质是开启一个新的线程来执行。

异步:即整个业务中的某些逻辑交给不同的线程异步处理,不用等待异步线程的结果就可返回。

同步:即一条线程干到底,在没结束没返回之前不能干其它事情,必须在所有逻辑处理完才能返回。

阅读更多

Spring MVC 集成Servlet3.0 AsyncContext异步请求实现

Servlet 和基于 Servlet 的容器(例如Tomcat)默认处理请求和处理业务是同一条线程,即有请求进来后,分配一条线程接收并处理请求,并继续执行业务处理,直到所有处理结束才完成响应,线程才会释放。这使得 Servlet 对业务方法的调用变成一种阻塞调用,效率较低。

Servlet3.0 提供了AsyncContex 来异步处理请求,将请求线程与业务处理线程分离。

阅读更多

事件驱动架构

事件驱动架构,通常指使用消息队列的异步架构。通常是应用在模块之间或服务之间的写操作,目的是实现依赖解耦。

使用消息队列实现异步架构是目前互联网应用系统中一种典型的架构模式。

阅读更多