您的位置 首页 java

关于消息的传递和集成,你可能还不知道

消息传递和集成

前文已经提到了消息传递代理及其在应用程序和Zipkin 服务器之间进行通信的用法。一般来说, Spring Cloud 可以通过同步/异步HTTP和消息传递代理支持两种类型的通信。该领域的第一个项目是Spring Cloud Bus,它允许开发人员向应用程序发送广播事件,将有关状态的修改(如配置属性更新或其他管理命令等)通知给应用程序。实际上,开发人员也可能希望使用具有RabbitMQ代理的AMQP启动器或Apache Kafka的启动器,其启用方法和前文所述是一样的, 只需要将springcloud sarterbus- amqp或spring-cloud_starter-bus-kafka包含在依赖关系管理中即可,所有其他必要的操作都将通过自动配置来执行。

Spring Cloud Bus是一个相当小的项目,它允许开发人员使用分布式消息传递功能进行常见操作,如广播配置更改事件。但是,如果要构建由消息驱动的微服务组成的系统,那么正确的框架选择应该是Spring Cloud Stream。这是一个非常强大的框架,也是最大的Spring Cloud 项目之一,本书专门用了一个整章 (第11章“消息驱动的微服务”)来详细介绍它。与Spring Cloud Bus相同,它有两个绑定器(Binder) 可用,第一个用于AMQP和Rabbit MQ,第二个则用于Apache Kafka. Spring Cloud Stream基于Spring Integration(这是Spring 的另一个大型项目),它提供了一种编程模型,支持大多数企业集成模式( Enterprise Integration Pattem) ,如端点、通道、聚合器( Aggregator)或转换器(Transformer)等。整个微服务系统中包含的应用程序将通过Spring Cloud Stream输入和输出通道进行相互通信。它们之间的主要通信模型是发布/订阅(Publish/Subscribe) ,其中的消息将通过共享主题广播。

此外,支持每个微服务的多个实例也很重要。在大多数情况下,消息应仅由单个实例处理,而发布/订阅模型不支持单个实例,这就是为什么Spring Cloud Stream引入了分组机制,在该机制中,只有一个组成员从目的地接收消息。正如前文所述,这两个启动器也可以包含在项目中,具体包含哪一个则取决于绑定器的类型: spring-cloud-starter-stream-kafka 或spring-cloud-starter-stream-rabbit.

还有两个与Spring Cloud Stream相关的项目。第一个是Spring Cloud Stream App Starters,它定义了一组Spring Cloud Stream应用程序,这些应用程序都可以独立运行或使用马上要介绍的第二个项目Spring Cloud Data Flow。在这些应用程序中,开发人员可以区分连接器、网络协议适配器和通用协议。Spring Cloud Data Flow是另一个应用广泛且又功能强大的Spring Cloud工具包。它通过为构建数据集成和实时数据处理管道提供智能解决方案,简化了开发和部署。基于微服务的数据管道的编排是通过简单的DSL、拖放式用户界面仪表板和REST API联合完成的。

本文给大家讲解的内容是消息传递和集成

  1. 下篇文章给大家讲解的是 云平台支持
  2. 觉得文章不错的朋友可以转发此文关注小编;
  3. 感谢大家的支持!

文章来源:智云一二三科技

文章标题:关于消息的传递和集成,你可能还不知道

文章地址:https://www.zhihuclub.com/177883.shtml

关于作者: 智云科技

热门文章

评论已关闭

12条评论

  1. With thanks, Wonderful stuff!
    custom dissertation writing services dissertation writing service uk

  2. Many thanks. Excellent stuff.
    write my essay online cheap can someone write my assignment for me

  3. Wow a good deal of beneficial material.
    paper writing services legitimate essay writing service discount

网站地图