• 理解消息中间件

    本文出自:【InTheWorld的博客】

    消息中间件(Message-oriented middleware)是一类基础通信软件,它可以为分布式应用或者系统提供异步、松耦合、高可靠性、可扩展并且安全的通信功能。

    这段话出自《ActiveMQ in Action》,算是对消息中间件比较准确的定义。虽然这句话只有不到两行,却很值得我们仔细分析。

    1. 异步性

    image

    在分布式系统中,应用需要通过网络的方式协作。协作的典型方式就是通过RPC,RPC的实现方式有很多种,但有一点很确定——RPC是同步的。所谓的同步,是指请求返回时,请求的任务已经完成。区别于RPC这种同步的方式,消息中间件旨在实现一种异步的模式。看看下图就能发现消息中间件的异步特点。

    image

    异步模式与同步模式之间其实没有绝对的优劣,需要根据场景来讨论。比如在高并发的场景,由于同步模式的阻塞特性,可能会导致服务的【查看更多】