1.为什么使用消息队列?
如果我们不使用消息队列,对于用户的请求,而是直接落到服务器上,再通过数据库或者缓存对它进行响应。假如在高并发的场景下,如果没有缓存或者数据库承受不了这么大的压力的话,就会造成相应速度非常缓慢,甚至造成数据库宕机。但是使用消息队列之后,用户的请求数据发送给了消息队列之后可以立即返回,再由消息队列的消费者进程从消息队列中获取数据,异步写入数据库。由于消息队列服务器处理速度快于数据库,因此响应速度得到大的改善。
2.消息队列有什么缺点?怎么考虑用不用消息队列?
1.系统可用性低。系统可用性在某种程度上降低,为什么这么说呢?在加入MQ之前,你不用考虑消息丢失或者说MQ挂掉的情况,但是引入MQ 之后你就要去考虑了。
2.系统复杂性提高。在引入了MQ之后,你就要去考虑消息丢失了怎么办?消息传递进来的顺序有没有改变?消息有没有被重复消费?这些问题都使得系统的复杂性提高了。
3.一致性问题。因为消息队列有异步的机制,所以如果消息传递进来之后,但是这条消息没有被真正的消费,就会导致数据不一致的问题。
消息队列相关知识点
最新推荐文章于 2025-09-17 16:15:40 发布
627

被折叠的 条评论
为什么被折叠?



