rabbitmq
Mossil
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Rabbitmq-return机制
1. 概念 在某些情况下,当我们在发送消息时当前的exchange不存在或者指定的路由key路由不到,这个时候如果我们需要监听这种不可达的消息,就要使用Return Listener。Return Listener用于处理一些不可路由的消息。 2. 图解 ...原创 2021-06-24 21:49:58 · 475 阅读 · 2 评论 -
Rabbitmq-幂等性
1. 概念 用户对于同一操作发起的一次请求或者多次请求的结果是一致的,比如在mysql数据当中的乐观锁就可以用来保障幂等性。 在业务高峰期最容易产生消息重复消费问题,比如当消费者消费完消息时,在给生产者返回ack时由于网络中断,导致生产者未收到确认信息,该条消息就会重新发送并被消费者消费,但实际上该消费者已成功消费了该条消息,这就造成了重复消费。而幂等性,即消息不会被多次消费,即使我们收到了很多一样的消息。 2. 解决方案:唯一ID+指纹码 在消费者消费前先去数据库查询这条消息的指纹码标识是否存在,没原创 2021-06-24 21:42:10 · 555 阅读 · 0 评论 -
Rabbitmq-保证消息百分之百投递成功
1. 生产者的可靠性投递 保证消息的成功发出 保证mq节点的成功接收 生产者收到mq节点确认应答 完善的消息补偿机制 注:在实际的生产环境中,很难保证前3点的完全可靠,如在极端的环境中,生产者发送消息失败了,生产者在接受确认应答时突然发送网络闪断等情况,所以很难保证可靠性投递,因此才需要完善的消息补偿机制。 2. 解决方案 消息信息落库,对消息状态进行打标签(常用方案) 消息的延迟投递,做二次确认,回调检查(不常用,大厂在用的高并发方案) ...原创 2021-06-24 21:27:30 · 542 阅读 · 0 评论 -
Rabbitmq-ACK机制
1. 概念 生产者发送消息到消息队列,消息队列接受到消息后产生回送响应,生产者中有个Confirm Listener异步监听响应应答,所以ACK机制又叫comfirm机制。 生产者投递消息过后,如果消息队列接受到了则会给生产者一个应答 生产者接受应答,用来确认这条消息是否正常发送到了消息队列,这也是消息可靠性投递的核心保障。 ...原创 2021-06-24 20:36:55 · 814 阅读 · 0 评论 -
Rabbitmq-PHP浅试
<?php $config = [ 'host' => '172.17.0.7', 'vhost' => 'my_vhost', // 虚拟机 'port' => '5672', 'login' => 'admin', 'password' => 'admin' ]; $conn = new AMQPConnection($config); if (!$conn->connect()) { exit('连接失败')原创 2021-06-24 10:12:03 · 169 阅读 · 0 评论 -
Rabbitmq-docker安装
拉取镜像 docker pull rabbitmq 构建rabbitmq容器 docker run -p 5672:5672 -p 15672:15672 -d --name rabbitmq -v /docker/rabbitmq/:/var/lib/rabbitmq --privileged=true --hostname myRabbitmq -e RABBITMQ_DEFAULT_VHOST=my_vhost -e RABBITMQ_DEFAULT_USER=admin -e RABBIT.原创 2021-06-23 16:48:05 · 215 阅读 · 2 评论 -
Rabbitmq-初识
1. rabbitmq的诞生及概念 消息队列的来源: ①、分布式系统已成为当前系统架构的主流,而消息队列在分布式系统中作为消息中间件能为分布式系统中的各种应用提供会话平台。 ②、用多进程异步操作取代单进程同步操作满足了高性能系统架构需求。 ③、可以防止服务器一下子做很多事情,消息队列采用队列的形式,消费者读取队列里面的消息的时候是一条一条读取的,服务器不会超负载。 2.消息队列的概念: 消息队列中间件是分布式系统中重要的组件,主要用于应用解耦、异步消息、流量削峰等问题。可实现高性能、高可用、可伸缩和最终原创 2021-06-22 11:35:42 · 215 阅读 · 0 评论
分享