kafka我们经常听说,来源于LinkedIn公司,后来加入了Apache的阵营。kafka主要应用的场景:1、前端不断发送信息,后来造成拥塞,需要缓冲地带。2、前端发送的信息种类很多,需要根据不同的消息优先级,将优先级高的消息优先处理。
如果没有kafka会出现什么场景。记得在京东刚推出秒杀商品时,只要一到秒杀时间,系统肯定崩溃,气得刘BOSS在微博上Show了一把刀。在kafka应用后,客户会延迟时间收到秒杀是否成功的信息,客户感知急剧上升。
一、kafka的架构是串行处理方式
kafka对消息保存时根据Topic进行归类,发送消息者成为Producer,消息接受者成为Consumer,此外kafka集群有多个kafka实例组成,每个实例(server)成为broker。无论是kafka集群,还是producer和consumer都依赖于zookeeper来保证系统可用性集群保存一些meta信息。
二、kafka有两种消息传递模式
点对点模式,只有一个消费者能收到消息