说在前面 本次开始进行rocketmq源码解析,比较喜欢rocketmq的架构设计,rocketmq内嵌了namesrv注册中心保存了元数据,进行负载均衡、容错的一些处理,4.3以上支持消息事务,有管理控制台、命令行工具,底层namesrv与broker、client与server交互netty实现 ...
分类:
其他好文 时间:
2019-10-01 13:32:33
阅读次数:
92
<! flowchart 箭头图标 勿删 一、前言 提到mq,可能很多朋友都有多耳闻,很多大公司都在使用这种技术。就小编而言,听说使用mq可以进行秒杀的操作,而且使用十分的方便,效率十分的高。以前小编也做过关于秒杀的技术,就是使 ...
分类:
其他好文 时间:
2019-09-28 14:57:18
阅读次数:
261
基于Netty的IdleStateHandler实现Mqtt心跳 解析 最近研究 编写的基于 的`mqtt client`(),总结若干知识点. 中,实现心跳机制较为简单,主要依赖于 判断 的读写超时. 以上是 的构造函数,主要依赖于三个参数 ,`writerIdleTimeSeconds allI ...
分类:
Web程序 时间:
2019-09-27 21:30:19
阅读次数:
109
Netty入门 Netty的重要性不言而喻。那么今天就来学习一下Netty。 整个项目基于Gradle搭建。 Build如下所示: 主要得去mvn仓库里把netty all拉下来。 一个HTTP的服务器。 运行结果如下所示: 好的我们现在已经完成了一个Http最简单的服务器。 如果跑起来了,我们开始 ...
分类:
Web程序 时间:
2019-09-27 18:55:48
阅读次数:
142
使用Netty搭建UDP服务收集日志,使用过程中发现,部分日志接收不到,排查发现,都是大日志记录不到,后查询相关文档进行如下修改 添加缓存配置后,大日志就接收得到了 参考文档: https://www.jianshu.com/p/975b30171352 ...
分类:
Web程序 时间:
2019-09-27 12:36:05
阅读次数:
119
我是用了netty搭建了一个UDP接收日志,堆启动配置 Xmx256 Xms256 ,项目刚启动的时候,系统进程占用内存很正常,在250M左右。 长时间运行之后发现,进程占用内存不断增长,远远超过了我设置的堆内存大小,查看幸存者,伊甸园,老年代,gc都很正常,堆使用数据一切正常,甚至我怀疑元空间占用 ...
分类:
其他好文 时间:
2019-09-27 12:29:18
阅读次数:
156
原文转至:https://docs.google.com/document/d/1Lr9UYXEz6s6R_3PWg3bZQLF3upGaNEkc0rQCFSzaYDI/edit# Asynchronous I/O Design and Implementation Motivation I/O a ...
分类:
其他好文 时间:
2019-09-25 19:58:22
阅读次数:
115
Unsafe类实际上是Channel接口的辅助类,实际的IO操作都是由Unsafe接口完成的。 一、Unsafe继承关系图 二、AbstractUnsafe源码分析 1. register方法 register方法主要用于将当前Unsafe对应的Channel注册到EventLoop的多路复用器上, ...
分类:
Web程序 时间:
2019-09-25 16:11:30
阅读次数:
130
一、NioEventLoop与NioEventLoopGroup的关系 二、NioEventLoop 1. 设计原理 1. 负责IO读写 2. 执行task。通过调用NioEventLoop的execute(Runnable task)方法实现。我们知道,为了防止资源竞争和并发操作,我们经常会判断当 ...
分类:
Web程序 时间:
2019-09-25 16:08:20
阅读次数:
133
前言:我们知道,Netty是基于NIO开发的一套框架,在学习Netty之前,我们先学习下Java NIO。 一、IO多路复用模型 IO多路复用模型使用了Reactor设计模式,主要有三种实现:Reacotr单线程、Reactor多线程、Reactor主从模式。 1. Reactor单线程 在Reac ...
分类:
编程语言 时间:
2019-09-25 16:06:31
阅读次数:
86