rocketmq
RabbitMQ/RocketMQ消息可靠性保证
RabbitMQRabbitMQ刷盘机制异步写入文件前会有一个Buffer,大小为1M(1048576),数据在写入文件时,首先会写入到这个Buffer,如果Buffer已满,则会将Buffer写入到文件(此时写入到内核态缓存中, 未必刷到磁盘);有个固定的刷盘时间:25ms,也就是不管Buffer
自定义rocketmq-spring-boot-starter
一般使用rocketmq-starter都会进行不同程度的封装, 在此分享一种封装思路基于rocketmq-spring-boot-starter
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rock
RocketMQ解决消息发送与业务落库的一致性
在实际业务中, 经常有如下场景更新一条数据后, 需要发送一条消息异步通知其他服务进行后续处理比如用户完成激活, 发送一条消息通知第三方服务同步用户状态那么会有如下代码@Transactional
public void enabled() {
//更新用户状态
updateUser(
RocketMQ架构及特性
架构RocketMQ包含四个组件NameServer, Broker, Consumer, ProducerNameServer类似注册中心, Broker接收存储消息, Consumer和Producer在项目内定义Broker向所有NameServer注册自己, 持续发送心跳包Consumer和