持久发布-订阅支持
应用程序之间的通信遵循发布-订阅模型,其中数据通过共享主题广播。 这可以在下图中看到,它显示了一组交互的 Spring Cloud Stream 应用程序的典型部署。

图 1.Spring Cloud Stream 发布-订阅
传感器向 HTTP 端点报告的数据将发送到名为raw-sensor-data
.
从目标开始,它由计算时间窗口平均值的微服务应用程序和将原始数据摄取到 HDFS(Hadoop 分布式文件系统)的另一个微服务应用程序独立处理。
为了处理数据,两个应用程序在运行时都将主题声明为其输入。
发布-订阅通信模型降低了生产者和消费者的复杂性,并允许将新应用程序添加到拓扑中,而不会中断现有流。 例如,在平均值计算应用程序的下游,您可以添加一个应用程序来计算最高温度值以进行显示和监控。 然后,您可以添加另一个应用程序来解释相同的平均值流以进行故障检测。 通过共享主题而不是点对点队列进行所有通信可以减少微服务之间的耦合。
虽然发布-订阅消息传递的概念并不新鲜,但 Spring Cloud Stream 采取了额外的步骤,使其成为其应用程序模型的约定优于配置的选择。 通过使用本机中间件支持,Spring Cloud Stream 还简化了跨不同平台的发布-订阅模型的使用。