RabbitMq使用场景

1.解耦,削峰异步

   串行方式;业务1先完成,在完成业务2,然后完成业务3   1  2  3都没问题都返回给客户端

 

public  class  Events{

业务1先完成,

在完成业务2,

然后完成业务3 

}

 2  并行执行   异步线程池

public  class relationMessage(){

      异步执行

        threadPool.submit(new Callable<Object>){

                     public  Object call(){

                       业务1   

               }

          }

 

   threadPool.submit(new Callable<Object>){

                     public  Object call(){

                       业务2

               }

          }

 

   threadPool.submit(new Callable<Object>){

                     public  Object call(){

                       业务3    

               }

          }

 

}

 

 

上面1是串行执行效率低     2是并行执行但是线程池要自己创建和维护不能做到高可用

所以使用消息队列

 

使用消息队列异步执行不阻塞

 

 

流量的削峰

 

posted @ 2021-03-24 22:07  余生请多指教ANT  阅读(1)  评论(0编辑  收藏  举报