RabbitMQ
文章平均质量分 95
杰深入学习计算机
已经入门,继续努力
展开
-
【RabbitMQ】应用问题
幂等性是数学和计算机科学中某些运算的性质, 它们可以被多次应⽤, ⽽不会改变初始应⽤的结果.应⽤程序的幂等性介绍在应⽤程序中, 幂等性就是指对⼀个系统进⾏重复调⽤(相同参数), 不论请求多少次, 这些请求对系统的影响都是相同的效果.⽐如数据库的 select 操作. 不同时间两次查询的结果可能不同, 但是这个操作是符合幂等性的. 幂等性指的是对资源的影响, ⽽不是返回结果. 查询操作对数据资源本⾝不会产⽣影响, 之所以结果不同, 可能是因为两次查询之间有其他操作对资源进⾏了修改.原创 2024-09-22 14:32:19 · 1138 阅读 · 0 评论 -
【RabbitMQ】⾼级特性
设置了队列和消息的持久化, 当 RabbitMQ 服务重启之后, 消息依旧存在. 如果只设置队列持久化, 重启之后消息会丢失. 如果只设置消息的持久化, 重启之后队列消失, 继⽽消息也丢失. 所以单单设置消息持久化⽽不设置队列的持久化显得毫⽆意义.消息过期之后, 不⼀定会被⻢上丢弃. 因为RabbitMQ只会检查队⾸消息是否过期, 如果过期则丢到死信队列. 此时就会造成⼀个问题, 如果第⼀个消息的延时时间很⻓, 第⼆个消息的延时时间很短, 那第⼆个消息并不会优先得到执⾏.原创 2024-09-21 22:42:50 · 1166 阅读 · 0 评论 -
【RabbitMQ】应用
P: ⽣产者, 也就是要发送消息的程序C: 消费者,消息的接收者Queue: 消息队列, 图中⻩⾊背景部分. 类似⼀个邮箱, 可以缓存消息;原创 2024-09-20 19:14:43 · 972 阅读 · 0 评论 -
【RabbitMQ】快速上手
⽣产者(Producer)创建消息, 然后发布到RabbitMQ中. 在实际应⽤中, 消息通常是⼀个带有⼀定业务逻辑结构的数据, ⽐如JSON字符串. 消息可以带有⼀定的标签, RabbitMQ会根据标签进⾏路由, 把消息发送给感兴趣的消费者(Consumer).RabbitMQ是遵从AMQP协议的,换句话说,RabbitMQ就是AMQP协议的Erlang的实现(当然RabbitMQ还⽀持STOMP2, MQTT2等协议). AMQP的模型结构和RabbitMQ的模型结构是⼀样的.原创 2024-09-18 16:04:10 · 1048 阅读 · 0 评论 -
【RabbitMQ】RabbitMQ 概述
MQ( Message queue ), 从字⾯意思上看, 本质是个队列, FIFO 先⼊先出,只不过队列中存放的内容是消息(message) ⽽已. 消息可以⾮常简单,⽐如只包含⽂本字符串, JSON等,也可以很复杂, ⽐如内嵌对象.MQ多⽤于分布式系统之间进⾏通信.同步通信直接调⽤对⽅的服务, 数据从⼀端发出后⽴即就可以达到另⼀端.2. 异步通信。原创 2024-09-18 09:01:36 · 1138 阅读 · 0 评论