rocketmq-4.0.0 和4.1.0 源码比对分析
来源:互联网 发布:vb.net 添加控件 编辑:程序博客网 时间:2024/05/22 16:52
从源码比对中可得知RocketMQ升级的过程及内情,话不多说 上结果
比对源码版本:rocketmq-rocketmq-4.0.0-incubating和 rocketmq-rocketmq-all-4.1.0-incubating
- 修正部分拼写错误
- ConcurrentHashMap 优化为 ConcurrentMap接口 大概是因为 ConcurrentHashMap也不是绝对的线程安全吧
- ConsumerManager中consumerIdsChanged 改为 handle ,参数也有变化 此为重要变化
- ClientManageProcessor增加checkClientConfig
- PullMessageProcessor 、PullMessageProcessor、SendMessageProcessor 重写 processRequest
- BrokerController registerProcessor 增加 SEND_BATCH_MESSAGE CHECK_CLIENT_CONFIG
- BrokerStartup 中 commandLine 的 -p -m 参数判断下沉
- MQPushConsumer 增加subscribe访问方式, DefaultMQPushConsumer 也同样继承
- DefaultMQPullConsumerImpl、DefaultMQPushConsumerImpl增加并发控制 volatile synchronized 等
- RebalancePushImpl增加了心跳机制 重新唤醒客户端
- MQClientAPIImpl调整了retryBrokerName参数,增加 queryConsumeQueue和 checkClientInBroker api
- MQProducer增加 Collection的send接口 DefaultMQProducer 也一并继承
- LoggerName增加 RocketmqConsole RocketmqFilter两种log类型
- FilterAPI.java 增加 build访问
- 优化 MessageClientIDSetter 为24小时制
- PullMessageRequestHeader增加 expressionType 表达式,Consumer可以用
- RequestCode.java ResponseCode.java增加几种操作 类型 QUERY_CONSUME_QUEUE SEND_BATCH_MESSAGE CHECK_CLIENT_CONFIG、FILTER_DATA_NOT_EXIST FILTER_DATA_NOT_LATEST
- BrokerConfig.java 增加对filter的一些处理
- MixAll.java file2String使用 FileInputStream替代 FileReader ,貌似reader容易乱码
- Consumer.java增加 f=filterType e=expression 参数
- Producer.java增加p=prop参数
- DynaCode.java里面 Arrays改用collection
- FiltersrvStartup.java、NamesrvStartup.java addShutdownHook 改用 Thread Runnable/ShutdownHookThreadCallable
- MessageStoreConfig.java增加 enableConsumeQueueExt 最大64M
- Command 接口类均增加 SubCommandException
从以上可以看出 rocketmq也在不断地优化自己的服务,当然,这些东西也是大家很容易做到的,至于差异的作用,以及如何使用还需要继续分析。
阅读全文
0 0
- rocketmq-4.0.0 和4.1.0 源码比对分析
- RocketMQ 源码分析
- RocketMQ 源码分析
- RocketMQ:索引源码分析
- RocketMQ 源码分析(一)
- RocketMQ源码分析----消息存储
- RocketMQ源码分析----发送消息
- RocketMQ源码分析----消费消息
- RocketMQ源码分析之NameServer
- rocketmq-remoting 源码分析NettyRemotingServer
- rocketmq-remoting源码分析NettyRemotingClient
- 源码分析RocketMQ系列索引
- RocketMQ源码分析----刷盘的实现
- RocketMQ源码分析----Broker处理发送请求
- RocketMQ源码分析----Broker处理消费请求
- 源码分析RocketMQ之消息消费
- RocketMQ生产者消费者部分源码分析总结
- RocketMQ 源码分析 —— Filtersrv
- hive报错:Execution failed with exit status: 3
- 深入解析Oracle 10g中SGA_MAX_SIZE和SGA_TARGET参数的区别和作用
- HTTP响应头和请求头信息对照表
- 在Linux系统中使用ntfs、fat32格式的存储设备
- 添加MyEclipse WebSphere Portal Server支持(二)
- rocketmq-4.0.0 和4.1.0 源码比对分析
- Python实现Pat 1088. Rational Arithmetic (20)
- padas数据结构:DataFrame
- 1051. 复数乘法 (15) PAT乙级真题
- jQuery+js+ajax用接口添加数据
- Python3.x 正则表达式
- eclipse添加约束文件
- Android实现计时与倒计时的几种方法
- mysql安装error:the security setting could not be applied