MQ底层类MQClientInstance和ProcessQueue分析

技术MQ底层类MQClientInstance和ProcessQueue分析本篇内容介绍了“MQ底层类MQClientInstance和ProcessQueue分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样

本文介绍了MQ底层类MQClientInstance和ProcessQueue分析的相关知识。很多人在实际办案过程中都会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

00-1010 defaultmqproducterrimpl、DefaultMQPullConsumerImpl和DefaultMQPushConsumerImpl的成员变量都包含相同的成员对象:

privateqclientinstance qclientfactory;

this . mqclientfactory=mqclientmanager . getinstance()。getAndCreateMQClientInstance(this . defaultmqpushconsumer,this . rpchook);MQClientInstance的功能如下:

MQClientInstance负责通过与NameServer通信维护心跳,并根据Topic获取Broker地址;

MQClientInstance负责与Broker通信,以发送和接收消息并重新平衡;

在正常情况下,使用火箭MQ的生产者或消费者,或者一个JVM进程只有一个MQClientInstance就足够了。如果不通过setInstanceName手动设置,此时创建的一个或多个使用者或生产者都将使用相同的MQClientInstance(默认名称为“DEFAULT”)。

但是,在某些情况下,只有一个MQClientInstance对象是不够的。例如,如果一个Java程序需要连接两个MQ集群,它将从一个集群被消费并被发送到另一个集群,但是一个MQClientInstance对象不能支持这种情况。在此时一定要手动指定不同的InstanceName,将在底部创建两个MQClientInstance对象。

publicclassMQClientManager{

privatedstatimmqclientmanagerinstance=new mqclientmanager();

private atomicintegerfactoryndexgenerator=new tomicinteger();

privateConcurrentMapString/* client id */,MQClientInstancefactoryTable=

newConcurrentHashMapString,MQClientInstance();ClientId生成规则:

如果在同一台机器上有多个带有MQ集成服务的客户端,进程ID

00-1010路径:org . Apache . rockemq . client . impl . consumer。

“MQ客户端实例和MQ底层类的进程队列分析”的内容到此结束。感谢阅读。如果你想了解更多的行业,可以关注网站。边肖将为您输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/85710.html

(0)

相关推荐

  • 火柴英文,卖火柴的小女孩英文原版结局

    技术火柴英文,卖火柴的小女孩英文原版结局Once upon a time a little girl tried to make a living by selling matches in the street. Th

    生活 2021年10月26日
  • ASP.NET MD5和SHA1的加密方法是什么

    技术ASP.NET MD5和SHA1的加密方法是什么这篇文章将为大家详细讲解有关ASP.NET MD5和SHA1的加密方法是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了

    攻略 2021年10月28日
  • 通过英语怎么说,在英语考试中取得好成绩英语怎么说

    技术通过英语怎么说,在英语考试中取得好成绩英语怎么说在英语考试中取得好成绩的英文通过英语怎么说: do well on the Test of English或者Get good marks in English exa

    生活 2021年10月25日
  • leetcode反转链表怎么用(leetcode链表怎么分割)

    技术LeetCode如何实现部分链表反转这篇文章将为大家详细讲解有关LeetCode如何实现部分链表反转,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。部分链表反转。1)链表为空或者一个

    攻略 2021年12月15日
  • oracle表优化方法教程

    技术oracle表优化方法教程这篇文章主要讲解了“oracle表优化方法教程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“oracle表优化方法教程”吧!1、建立实验表c

    攻略 2021年11月11日
  • 香港云服务器安全吗

    技术香港云服务器安全吗对于网站服务器的安全一直都是很多站长需要首先考虑的问题,即便是有高效冗余备份的香港云服务器也可能存在一些潜在的安全问题,那么租用香港云服务器究竟能否保证数据和网站的安全。其实在安全性上很多香港云服务

    礼包 2021年10月26日