发布订阅是一个常见的设计模式,开源社区中已经存在很多该模式的实现。

我们根据gRPC框架实现一个发布订阅模式。 —— Go语言高级编程

之前学习第一章的时候,我们自己实现了一个发布订阅模型,可以回忆一下:

【Go】常见的并发模式

 

这次我们使用的是docker项目中提供的pubsub实现,下面是基于pubsub包实现的本地发布订阅代码:

 

有了这段代码之后,我们再来实现一个基于gRPC的网络版发布订阅模式。

先写protobuf代码:

这里Subscribe函数是一个单向流,它由服务端发送给客户端。

代码生成命令这里就不重复了。

 

然后开始写服务端代码:

这里需要注意的…就是导入本地包那里,后面有空专门讲一下。

 

发布客户端:

 

接受客户端:

 

大致就这样吧。

【Go】基于gRPC框架的发布订阅模式
Tagged on:
5 1 vote
Article Rating
订阅
提醒
1 评论
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

写的挺好的!