系统设计:发布-订阅(Pub-sub)抽象
了解设计发布-订阅系统的基础知识。
什么是发布-订阅系统?
发布-订阅消息通信,通常称为Pub-sub消息通信,是一种常见的在无服务器和微服务架构中使用的异步服务通信方法。使用发布-订阅系统,消息可以异步发送到一个系统的不同子系统中。订阅发布-订阅模式的所有服务都将接收推入系统的消息。
例如,当著名运动员Cristiano Ronaldo在Instagram上发布或发推文时,他的所有追随者都会得到通知。在这里,Cristiano Ronaldo是发布者,他的帖子或推文是消息,所有追随者是订阅者。
动机
分布式系统的硬件基础设施由数百万台机器组成。使用发布-订阅系统进行异步通信可以增加可扩展性。生产者和消费者是相互独立的,因此可以分别扩展和开发它们。组件之间的解耦,生产者和消费者,允许更大的可扩展性,因为添加或删除任何组件不会影响其他组件。
如何设计发布-订阅系统?
我们将发布-订阅系统设计分为以下课程:
- 介绍:在这节课中,我们将学习使用发布-订阅系统的用例,定义其要求并为其设计API。
- 设计:在这节课中,我们将讨论有消息队列和代理的两种发布-订阅系统设计。