- 博客(10)
- 收藏
- 关注
原创 RocketMQ之消息刷盘
将内存中生产的消息持久化到磁盘的操作就是消息刷盘。消息是用于不同服务之间通信使用,为了确保它的可靠性,必须要将它持久化到磁盘当中,这样可以保证在宕机或异常情况发生时,消息不会丢失。
2023-06-07 21:59:34 654 1
原创 RokectMQ生产消费流程
Apache RocketMQ 自诞生以来,因其架构简单、业务功能丰富、具备极强可扩展性等特点被众多企业开发者以及云厂商广泛采用。历经十余年的大规模场景打磨,RocketMQ 已经成为业内共识的金融级可靠业务消息首选方案,被广泛应用于互联网、大数据、移动互联网、物联网等领域的业务场景。想要深入理解RocketMQ架构设计可以从以下链接了解:1.2.可以从docs目录中去了解rocketMQ的设计,阅读源码最好从宏观上去理解,一行一行去理解效果不佳。
2023-06-03 00:23:11 371
原创 使用docker运行RocketMQ
一、拉取RocketMQ镜像docker pull apache/rocketmq //选择版本拉取docker pull apache/rocketmq:4.7.1二、运行容器,启动NameServer模块Namesrv模块主要负责服务的寻址和注册,如果该模块不能够在节点中被正确定位。整个RocketMQ的node都将无法正常工作。因此,将RocketMQ的Namesrv模块启动并部署在Docker容器中,通过使用–net=host参数使得容器内和宿主机在同一个网络中,可以实现在宿主机的网
2023-05-19 21:50:16 2236 3
原创 同步阻塞,同步非阻塞,异步非阻塞,异步阻塞,异步非阻塞
异步是通过回调函数来获取结果,先定义一个回调函数(参数),这个回调函数并不是立刻执行,另一个线程帮你读完数据再通过调用你的回调函数把真正的结果作为参数返回给你。而异步就是至少两个线程干的事,我饿了可以让室友带饭,自己继续在宿舍敲代码,等室友打饭回来,我不需要等室友打饭回来再继续敲代码,我也可以干其他的事。我认为同步是一个线程干全部事,全部事都亲力亲为,就像我在宿舍敲代码饿了就去外面吃个饭回来再敲代码,全程都是我自己做。同步阻塞,如果要很久才返回结果,那他在这段时间什么也做不了,干等,效率就低。
2023-04-08 12:51:41 99
原创 java中字符串和ByteBuffer之间的转换
网络上发送数据并不是直接字符串形式,而是将其转为ByteBuffer,然后ByteBuffer写到Channel。
2023-04-06 21:34:13 1165
原创 HeapByteBuffer和DirectByteBuffer区别
它使用的是堆内存,读写效率较低,会受到垃圾回收gc的影响,因为一般的垃圾回收都会影响到它的位置,比如拷贝算法、整理算法,要让内存移动,就会影响它的效率。
2023-04-06 17:10:51 172 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人