分布式消息中间件
分布式应用和集群:
从部署形态来看,它们都是多台机器或者多个进程部署,而且都是为了实现一个业务功能。
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。如果是一个业务被拆分成多个子业务部署在不同的服务器上,那就是分布式应用
如果是同一个业务部署在多台服务器上,那就是集群
分布式应用的多个子系统之间并不是完全独立的,它们需要相互通信来共同完成某个功能。系统间通信的方式有两种,一种是远程过程调用即RPC接口,
另一种是基于消息队列的方式。
基于消息队列的方式是指由应用中的某个系统负责发送消息,由订阅这条消息的相应系统负责接收消息。不同的系统在收到消息后进行各自系统内的业务处理。消息可以非常简单,比如只包文本字符串;也可以很复杂,比如包含字节流、字节数组,还可能嵌入对象,甚至是经序列化后的Java对象。消息生产者在发送消息后可以立即返回,由消息队列来负责消息的传递,消息发布者只管将消息发布到消息队列而不用管谁来取,消息消费者只管从消息队列中取消息而不用管是谁发布的,这样生产者和消费者都不用知道对方的存在。

更多精彩