# 集群架构：发布与订阅模型

在软件架构中，发布订阅是一种消息范式，消息的发送者（称为发布者）不会将消息直接发送给特定的接收者（称为订阅者）。而是将消息发送某个频道上，无需了解哪些订阅者可能存在。同样的，订阅者可以表达对一个或多个频道的兴趣，只接收感兴趣的消息，无需了解哪些发布者存在。

这种模式提供了更大的网络可扩展性和更动态的网络拓扑，同时也降低了对发布者和发布数据的结构修改的灵活性。

涉及三个重要概念：

#### 发布者

即消息的生产者，现实中，我们可以简单认为电视台演播室，就是消息的发布者，负责把播放消息。

#### 订阅者

即消息接收者，现实中，可以把电视观众视为订阅者。一个订阅者同时可以订阅多个频道，这样就能收到多个频道上的消息。

#### 频道

即消息的分类概念，这个和现实中电视频道是一个概念。

#### 广播

在传统的订阅-发布模型基础上，我们可以很容易实现广播效果：
==订阅者向当前所有频道上发送消息，那么就形成了广播形式==

beyod开发之初，就考虑到集群应用环境，所以也内建了发布订阅模型支持，用于构建分布式网络应用。