
中间件—MQ
java中间件
五爷_family
这个作者很懒,什么都没留下…
展开
-
java消费kafka队列数据(携带kafka密码)
package com.message.server;import org.apache.kafka.clients.consumer.*;import java.util.Collections;import java.util.Properties;public class ServerKafka { public static void main(String[] args) throws Exception { String jaasTemplate = "org.a.原创 2021-03-23 10:19:27 · 1953 阅读 · 0 评论 -
linux服务安装rabbitmq,添加新用户和vhost
下载地址;链接:https://pan.baidu.com/s/1rha0zqgjtig6-wswKqs48A提取码:vhzu复制这段内容后打开百度网盘手机App,操作更方便哦!安装步骤确保系统已经安装jdk1.8和mysql8.0版本的情况下,需按以下步骤进行安装在安装之前,一定要关闭防火墙,否则后续将无法登录管控台; 安装erlang:rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm 安装tcp_wrappers:yum install t原创 2020-12-23 16:52:05 · 1949 阅读 · 2 评论 -
kafka单线程
package com.zkdj.message.common;/** * 公共常量 * @author */public class Constants { /** * 配置文件属性 * @author */ public static class Pks{ //kafka地址信息 public static final String KAFKA_SERVERS = "kafka.bootstrap.servers"; public static final.原创 2020-11-16 17:53:56 · 727 阅读 · 0 评论 -
RocketMQ入门学习(七 )为什么同一个消费组设置不同tag会出现奇怪现象
一、问题复现1、描述两个一样的Consumer Group的Consumer订阅同一个Topic,但是是不同的tag,Consumer1订阅Topic的tag1,Consumer2订阅Topic的tag2,然后分别启动。这时候往Topic的tag1里发送10条数据,Topic的tag2里发送10条。目测应该是Consumer1和Consumer2分别收到对应的10条消息。结果却是只有Consumer2收到了消息,而且只收到了4-6条消息,不固定。2、代码2.1、Consumerpubl原创 2020-07-16 14:01:25 · 1305 阅读 · 0 评论 -
RocketMQ入门学习(六)发消息的时候选择queue的算法有哪些?
一、说明分为两种,一种是直接发消息,client内部有选择queue的算法,不允许外界改变。还有一种是可以自定义queue的选择算法(内置了三种算法,不喜欢的话可以自定义算法实现)。publicclassorg.apache.rocketmq.client.producer.DefaultMQProducer{//只发送消息,queue的选择由默认的算法来实现@OverridepublicSendResultsend(Collection<Messa...原创 2020-07-16 14:00:36 · 816 阅读 · 0 评论 -
RocketMQ入门学习(五*一)消息持久化存储源码解析
一、原理1、消息存在哪了?消息持久化的地方其实是磁盘上,在如下目录里的commitlog文件夹里。/root/store/commitlog源码如下://{@linkorg.apache.rocketmq.store.config.MessageStoreConfig}//数据存储根目录privateStringstorePathRootDir=System.getProperty("user.home")+File.separator+"store";...原创 2020-07-16 13:59:22 · 535 阅读 · 0 评论 -
RocketMQ入门学习(五*二)消息持久化存储源码解析
四、总结面试被问:Broker收到消息后怎么持久化的?回答者:有两种方式:同步和异步。一般选择异步,同步效率低,但是更可靠。消息存储大致原理是:核心类MappedFile对应的是每个commitlog文件,MappedFileQueue相当于文件夹,管理所有的文件,还有一个管理者CommitLog对象,他负责提供一些操作。具体的是Broker端拿到消息后先将消息、topic、queue等内容存到ByteBuffer里,然后去持久化到commitlog文件中。commitlog文件大小为1G,超出原创 2020-07-16 13:58:28 · 221 阅读 · 0 评论 -
RocketMQ入门学习(四)producer生产消息源码剖析
一、Demoimportorg.apache.rocketmq.client.producer.DefaultMQProducer;importorg.apache.rocketmq.client.producer.SendResult;importorg.apache.rocketmq.common.message.Message;/***Description:**@authorTongWei.Chen2020-06-2111:32:58*/public...原创 2020-07-16 13:54:36 · 635 阅读 · 0 评论 -
RocketMQ入门学习(二)怎么保证的消息不丢失?
一、消息发送过程我们将消息流程分为如下三大部分,每一部分都有可能会丢失数据。 生产阶段:Producer通过网络将消息发送给Broker,这个发送可能会发生丢失,比如网络延迟不可达等。 存储阶段:Broker肯定是先把消息放到内存的,然后根据刷盘策略持久化到硬盘中,刚收到Producer的消息,再内存中了,但是异常宕机了,导致消息丢失。 消费阶段:消费失败了其实也是消息丢失的一种变体吧。 二、Producer生产阶段Producer通过网络将消息发送给Bro.原创 2020-07-16 13:53:35 · 208 阅读 · 0 评论 -
RocketMQ入门学习(二)事务消息&顺序消息
一、事务消息的由来1、案例引用官方的购物案例:小明购买一个100元的东西,账户扣款100元的同时需要保证在下游的积分系统给小明这个账号增加100积分。账号系统和积分系统是两个独立是系统,一个要减少100元,一个要增加100积分。如下图:2、问题 账号服务扣款成功了,通知积分系统也成功了,但是积分增加的时候失败了,数据不一致了。 账号服务扣款成功了,但是通知积分系统失败了,所以积分不会增加,数据不一致了。 3、方案RocketMQ针对第一个问题解决方案是:如果.原创 2020-07-16 13:52:00 · 295 阅读 · 0 评论 -
RocketMQ - API
2、Consumer每个consumer只能关注一个topic。发消息肯定要必备如下几个条件: 指定消费组名(不能用默认的,会报错) 配置namesrv地址(必须) 指定topic name(必须) 指定tag/key(可选) 2.1、CLUSTERING集群模式,默认。比如启动五个Consumer,Producer生产一条消息后,Broker会选择五个Consumer中的其中一个进行消费这条消息,所以他属于点对点消费模式。publicclas.原创 2020-07-16 13:48:11 · 479 阅读 · 0 评论 -
RocketMQ新手学习 - API
八、Java API说明: RocketMQ服务端版本为目前最新版:4.7.0 Java客户端版本采取的目前最新版:4.7.0 pom如下<dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-client</artifactId><version>4.7.0</version>...原创 2020-07-16 13:45:00 · 995 阅读 · 0 评论 -
RocketMQ新手学习篇(一)新手也能看懂的原理和实战!
学任何技术都是两步骤: 搭建环境 helloworld 我也不例外,直接搞起来。一、RocketMQ的安装1、文档官方网站http://rocketmq.apache.orgGitHubhttps://github.com/apache/rocketmq2、下载wgethttps://mirror.bit.edu.cn/apache/rocketmq/4.7.0/rocketmq-all-4.7.0-bin-release.zip我们是基于Cen.原创 2020-07-16 13:42:15 · 376 阅读 · 0 评论 -
项目开发中MQ选型
0、汇总RocketMQ入门到入土(一)新手也能看懂的原理和实战!RocketMQ入门到入土(二)事务消息&顺序消息从入门到入土(三)RocketMQ 怎么保证的消息不丢失?RocketMQ入门到入土(四)producer生产消息源码剖析RocketMQ入门到入土(五)消息持久化存储源码解析RocketMQ入门到入土(六)发消息的时候选择queue的算法有哪些?RocketMQ入门到入土(七 )为什么同一个消费组设置不同tag会出现奇怪现象从入门到入土(八)Rocke原创 2020-07-16 13:34:34 · 1183 阅读 · 0 评论