在使用先前的消息队列时,我们通常使用集成的消息中间零件来实现相应的功能,并且有许多消息中间件。对于Execplestream等人,中间部分的这些消息的实施具有其自身的优势和缺点。  设计框架时,我们考虑它是否可以与SMS发送,分布式存储和其他功能等功能相同。当您选择自己的业务中的不同消息时,您只需要使用配置就可以意识到哪个消息中间部分用于灵活切换。SpringCloud流已经实现了此类功能。在下面,我们集成并测试框架中消息中间零件的功能。
目前,Spring-Cloud-Stream的官方网站表明已支持以下消息。我们使用RabbitMQ和Apache Kafka集成测试:
1.拉兔子的码头镜。带有后缀的后缀是带有网络管理接口的镜子
2.创建和启动RabbitMQ容器
3.检查兔子是否开始
4.访问管理控制台http://172.16.20.225:15672,输入用户名密码admin/123456登录In。如果无法访问管理台,您可以尝试使用命令来启动:
5. NACOS添加了配置。我们以操作日志和API日志为例,以解释自定义输入和输出频道发送消息。操作-LOG是操作日志,API-LOG是API日志。注意官方网站上有文档说明:使用多个RabbitMQ Binders时,您需要排除Rabbitautoconfiguration。在实际的应用程序过程中,如果未直接配置RabbitMQ的连接,则默认情况下将rabbitMQ健康检查连接,默认情况下,127.0.0.1:5672,导致后台。报告错误。
6.将Spring-Cloud-stream-rabbit添加到Gitegg-Service-service-bigdata依赖性。请注意,您只需要介绍特定消息中间件的微服务即可。您无需统一地引入您。使用消息中间件,不同的微服务可能会使用不同的消息中间零件。
7.自定义徽标输出频道logsink.java
8.自定义徽标输入频道logsource.java
9.实现日志推送接口的呼叫。@scheduled(filexraate = 3000)是测试推送消息。每3秒执行一次计时任务。注意:要执行定时任务,您还需要将@nablescheduling注释添加到应用程序start start class.ilogsendservice.java
logsendimpl.java
10.实施日志消息接收接口
ilogreeiveservice.java
logreceimpl.java
10.启动微服务,您可以看到已执行日志打印和推送和接收消息的情况
2.集成的KAFKA测试消息发送和接收和测试消息中间零件切换  使用Spring Cloud流的优点之一是,将消息切换到中间件并且不需要更改代码很方便。在同一时间,添加了Kafka配置,并且API日志继续使用RabbitMQ。操作日志使用KAFKA查看是否可以同时运行。这里,将配置测试放在其前面,以便于比较。
1.将kafka配置添加到NACOS,然后将操作_log的活页夹更改为kafka
2.登录到Kafka服务器,然后切换到Bifka bin目录以启动具有操作运行主题的消费者
3.启动微服务,并检查兔子和kafka的日志推送和接收是否正常运行
  首先准备三个CentOS系统的主机,将IP设置为:172.16.20.220,172.16.20.221,172.16.20.22222。  Kafka将使用大量文件和网络插座。Linux默认文件描述符(文件描述符)无法满足Kafka高吞吐量的要求,因此您需要在此处进行调整(更多性能优化,请检查官方KAFKA文档)交叉点
  New Kafka的日志目录和Zookeeper数据目录,因为这两个项目放置在TMP目录中,并且TMP目录的内容将通过重新启动而丢失,因此我们自定义以下目录:
2. Zookeeper.properties配置
修改如下:
3.将MyID文件添加到各种服务器的Zookeeper数据目录/data/Zookeeeper/数据,在Service Broker.ID属性值中编写一个新的MyID文件。> myid)
4. Kafka配置,输入配置目录,修改服务器。
5. Kafka在Kafka启动时首先开始Zookeeper,然后开始Kafka;关闭后,首先关闭Kafka,然后关闭动物园管理员。
第四,完整的NACOS配置
源代码地址:Gitee:https://gitee.com/wmz1930/giteggg
github:https://github.com/wmz1930/giteggg
原始:https://juejin.cn/post/7103338440300691486