kafka了解一下

在并发场景中,我们往往会使用队列将一些耗时的行为给暂存起来,然后后台启用业务程序去消化它。 

能够提供这种队列服务的,redis,kafka各算一个。先说redis.  redis有个list类型,有排序功能,能存亿级别的数据,并且从头或尾出数据复杂度O1,并且有原子级别的锁机制,讲这么多就是为了证明它有能力使用于高并发场景接收C端的必要业务数据入队。技术角度分析:C端10万级别请求来了,redis的list入队有个原子性操作可以保证快去并且最终有序的入队,这样一来无论你同一时刻多少请求来了,最终redis总是一个一个来处理的,只是它会很快速,最终的结果就是它们有项先后顺序的进入了redis的list,就成了我们常说的入队列了。再说出队,后台启用多进程/线程/协程并行去队列里面取数据进行业务处理,当然尽管你后台程序可以是并行去redis队列取数据并使用,但是对于redis服务端来说都是一个个客户端,可以做到让所有客户端只能一个个来pull队列里面的数据,划重点啦!!!强调下redis服务端是异步行为将数据发送到客户端的,这就会造成服务端单方面认为从它这里出去的数据都是按队列里面的先进先出的顺序发送给客户端,它才不管你达到客户端实际接受到的是不是还是原有的那个顺序,反正服务端是按那个顺序异步发的,有趣的地方也是这里了,比如服务端先数据a出队,其次数据b,但说不定实际到达客户端的是数据b,道理很简单异步行为,让a先走,但接收a的客户端可能卡了,花了3秒才接住a,但接收b的客户端信号很好,1秒就接住了,那你a虽然比b先出队半秒也还是比b慢。

再谈kafka,kafka用到了zookeeper,意味着它可以分布式的集群部署便的简单可靠强大并响应快速,redis你自己去部署一个集群说实话我有点懵,毕竟我没有从它文档里面直接获取我该怎样去配置它它就是集群了,但kafka有,kafka有订阅通知那一套,redis我印象中它也有,但是redis不保证推送过去的消息客户端一定就接受到了,所以对于redis的订阅通知来说,而且redis万一挂了呢,你可能会说有持久化啊,快照级别的,跟秒级别的持久化redis也都是有的,但是服务不能停啊!!!哪怕是一刻,可见并不是它的拿手好菜,想反kafka的集群对于数据有效写入的标准是可以根据实际写成功服务器的数量为参考依据去保证的,打个比方集群3台,2台写入成功了,1台失败了,它就认为写入成功了,并且它有自己的一套机制去保证集群服务器最低存活数量,重启挂掉的服务器,并且它总是建议你配置的服务器数量为奇数。再回正题,kafka订阅通知发消息是以组为单位,一个组里面的成员应该保持小于或者等于该主题创建时设置的分区个数,并且发送过来消息只会让该组中的一个客户端消费,划重点啦!!!!!  3个kafka客户端进一个H组了,订阅了一个3分区的A主题,现在A主题有一个M消息过来了,它会直接发到订阅该主题的组,那么我们的H组就获取到了M消息,但kafka内部机制可以保证M消息只会被该组的一个成员客户端给消费掉,这不就是提供了多进程并行处理队列的数据的类似场景么,想想一下主题就是队列,组里面的成员就是多个不同服务器里面进程,不就是多个进程同时等着该主题的消息发送过来,最终总有也只有一个客户端成功处理掉该消息,并且由于kafka支持分区,组内的成员可以各自对接一个分区,实现并行!!!而且kafka消费是支持同步与异步的噢,这个可以对比redis了队列和订阅了。

kafka是基于zookeeper上玩耍的,所以可以先去大概了解一下zookeeper受分布式场景喜爱的。我感觉到了kafka主题分区并行,以及配置选举,leader,flower等还有很多秘密,估计只能实战中慢慢再挖掘了,ok!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270