简述kafka消息中间件在云计算模型的应用

Posted 信息化漫谈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简述kafka消息中间件在云计算模型的应用相关的知识,希望对你有一定的参考价值。

        在云计算模型中,很多应用部署在一起,将产生数据交互的强烈需求。如在双11的时侯,几千万人向时向商城的订单系统下订单,而支付系统的能力只有几十万人的同时支付处理能力,怎么办?传统的处理方案主要是:限制商城同时下单的人数,但现实谁会拒绝用户下订单,这是现金流。因此,按照现实生活中公交车排队的处理经验,很多人流同时上一路公交车,采用排队机制,这种方案至少保证最终都上车,等待时间会增加。

                图1:没有排队机制,最终造成治安事件,最终大家都上不了车

        


图2:排队机制,有秩序,最终保证每个人都能上车

简述kafka消息中间件在云计算模型的应用


        一、为了解决,应用之间排队的需求,引入了消息中间件,业务常见的有kafaka、RabbitMQ等,一般称为MQ中间件。消息件的应用方式主要有:点对点方式:

        1、点对点发送模型。类似于QQ点对点聊天,当接收者不在线时,QQ服务器暂时缓存信息,当接收者上线时再将该离线消息再接收。

        2、发布、订阅模型。类似于新浪微博关注一些明星,当明星发布新消息时,我们(关注了该明星的人)登录weibo app时就能收到该明星的新消息,相当于群发机制。新浪通过该机制大大降低了服务器的开销,实现了app登录时按需获取。


        二、消息中间件的价值很大。消息中间件在云计算中用得非常多,例如,采集web server产生的大量日志;商城订单系统等。

        1、消峰作用:降低了业务在高峰期可能产生的业务死机影响,将高峰期的业务延缓处理,保证不影响业务的最终执行。如淘宝商城。

        2、保证数据安全:通过消息中间件的缓存、确认机制,保证消息的最终执行可靠。如QQ离线聊天。

        3、解耦软件,保证灵活性:数据的发送端、接收端不再强关联,由第三方软件进行管理,可保证数据处理的灵活性。如weibo的明星关注订阅功能。

以上是关于简述kafka消息中间件在云计算模型的应用的主要内容,如果未能解决你的问题,请参考以下文章

主流消息中间件优劣:ActiveMQ,RabbitMQ,Kafka,RocketMQ

Kafka的Lag计算误区及正确实现

Java设计模型应用——过滤器模式

消息中间件—简谈Kafka中的NIO网络通信模型

kafka消息中间件及java示例

中间件的使用场景?为什么使用?