消息队列是什么?

可简单理解为:把要传输的数据放在队列中

消息队列简单笔记

在Java中已经有很多的队列,但我们任然使用消息队列(MQ)中间件。

消息队列简单笔记

消息队列的优点

解耦

在生产者消费者模式中,但生产者给多个消费者提供服务时,生产者可以将数据放进消息队列中。

异步

同样在消费者生产者模式中,生产者将数据放进消息队列后,就可以直接返回,处理其他请求。

削峰、限流

在高并发的场景中,如果会有每秒1W+的请求,而机器每次只能处理5000+的请求,那么多出来的请求会把系统搞崩。这时候可以用消息队列来进行限流。

将请求都写到队列中,机器可以根据自身从消息队列中拿取请求,由系统自己控制。

使用消息队列会出现的问题

提升系统的复杂性

消息队列是不能单机的,因为若消息队列挂了,那么数据将会丢失。

且会增加系统的复杂性,添加中间件,维护等问题也会接踵而至。

数据丢失问题

的复杂性,添加中间件,维护等问题也会接踵而至。

数据丢失问题

如果消息队列挂掉则会导致数据丢失

相关文章:

  • 2022-12-23
  • 2021-11-20
  • 2021-04-02
  • 2021-09-30
  • 2021-12-23
  • 2021-03-31
  • 2021-05-05
  • 2022-01-27
猜你喜欢
  • 2021-10-25
  • 2021-06-30
  • 2021-07-06
  • 2022-12-23
  • 2021-07-27
  • 2021-11-07
  • 2021-12-03
相关资源
相似解决方案