mq
Alice_whj
记录生活点点滴滴
展开
-
消息队列常见面试题
这两个操作发生了两次系统调用,每次系统调用都得先从用户态切换到内核态,等内核完成任务后,再从内核态切换回用户态,也就是消息发送过程中一共发生了 4 次用户态与内核态的上下文切换。要想提高文件传输的性能,就需要减少【用户态与内核态的上下文切换】和【内存拷贝】的次数。通过上面的分析可以看出,第2、3次拷贝(也就是从内核空间到用户空间的来回复制)是没有意义的,数据应该可以直接从内核缓冲区直接送入Socket缓冲区。CPU把数据从用户缓冲区拷贝到内核的网络驱动的 socket 缓冲区;read:读取本地文件内容;原创 2024-06-06 16:48:51 · 204 阅读 · 0 评论 -
MQ消息丢失/重复/顺序/挤压
通过以上流程,RocketMQ 的事务消息能够保证在消息发送和消费过程中的事务一致性和可靠性,确保消息在各个环节的正确处理。采用了2PC(两阶段提交)+ 补偿机制(事务状态回查)的思想来实现了提交事务消息,同时增加一个补偿逻辑来处理二阶段超时或者失败的消息,如下图所示。RocketMQ事务消息是指应用本地事务和发送消息操作可以被定义到全局事务中,要么同时成功,要么同时失败。RocketMQ 的事务消息是指在消息发送方发送消息后,需要经过两阶段提交来确保消息的可靠性传递和处理。原创 2024-06-03 23:24:30 · 363 阅读 · 0 评论 -
极客笔记-消息队列
如果nameserver都挂了,sdk缓存了topic信息,依旧可用,所有它是AP,即保证可用性跟分区容错性。原创 2023-10-16 09:34:15 · 178 阅读 · 0 评论