请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

同步和异步

老师,mq的同步和异步的收发方式 ,只针对消费者接收消息有区别吧, 生产者生成消息没区别吧, 同步收的话, 我们通过线程池去执行收消息, 收到消息后,线程就回收了, 如果是异步收的话, 收完消息(没有消息的时候,会进入阻塞状态),线程无法回收, 生产者发消息的话, 不存在线程无法回收的这种情况吧。 还有一个问题,mq的队列中的消息是存储在哪里阿? 是在mq服务器的磁盘上吗?

正在回答 回答被采纳积分+3

1回答

神思者 2022-08-01 20:58:45

对,没错。mq的消息存放在磁盘上面,不会丢失

0 回复 有任何疑惑可以回复我~
  • 提问者 rock221 #1
    老师,我在网上看到当对消息持久化后,消息达到队列后,会存储到磁盘上, 如果非持久化的话, 一般存储与内存中,在内存空间吃紧的时候会被换入磁盘中,以节省内存空间。 当生产消费发送到mq中的队列中,消息存先储到了内存中(持久化), 然后存储到了我们本地安装mq的服务器的磁盘上,(而不是mq自己服务器上) 是这样吗?
    回复 有任何疑惑可以回复我~ 2022-08-02 09:37:04
  • 神思者 回复 提问者 rock221 #2
    你看一下RabbitMQ的API,在发送消息的时候我们就规定了,消息是不是要持久化存储
    回复 有任何疑惑可以回复我~ 2022-08-02 10:03:38
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信