谈长耗时任务的优化
分离关键业务形成分布式组件相对于all-in-one的web系统而言,有助于提升整个系统的可靠性、稳定性以及吞吐量。这里将系统中相对耗时的发送消息业务从web系统中剥离出来,放到网络上一个独立的节点上排队处理,可以充分利用新节点的计算能力来实现并发处理。这个案例中,另一个可以单独实现的组件是网关对接器:-。它的作用是为了适配网关接口,以及处理网关回执。这里所谓的分布式组件,可以是物理上的分布式(比如独立的物理节点),也可以是逻辑上的分布式(比如只是一个独立的JVM进程)。独立节点与否,可以参照节点资源的利用率,但只要跑在独立的JVM进程上,就可以保证单个服务的稳定性。分布式的组件通常都是基于事件驱动的,它们之间的通信可以基于消息中间件。