谈谈我对于kafka的理解吧

所谓的kafka就是消息对列
那他有什么作用?
就是相当于在一个队列的数据后面追加一条
也可以把kafka理解成为一个不会轻易消失的List集合,只要有一条消息发送过来,就会在集合的后面追加一条数据
而每次向kafka里发送消息他是不用等待的,把任务给了他,不会影响程序的正常运行。就相当于你把任务给他后他回了一句,任务我收到了,我去慢慢执行,你不用等我了
而你要使用队列程序的时间,每次开启一个新的请求都会从第一条消息开始,慢慢的向后面取出,直到全部取出,而里面的消息也不会消失,下一次请求时依次执行

他的优点是什么,或者说我为什么要使用kafka?
因为kafka是有一个消息队列的功能,比如说我要发送验证码,或者往数据库里添加消息,那么前端发起请求之后,我把这个请求的数据转交给kafka,而监听这个消息的的那条程序,会慢慢的执行,慢慢的给用户发送验证码,依次的给用户发送验证码,或依次的向数据库当中添加数据。虽然数据还没有添加到数据库里,短信验证码也还没有发送给用户,但前端会收到成功的返回值。

但我目前所理解到的缺点是,程序不能中断,如果程序重新启用,则会重新的依次执行kafka里的东西,哪怕是之前执行过的东西也会被再次执行
#面试##面试题##牛客解忧铺##2022届毕业生现状##如何判断面试是否凉了#
全部评论
kafka 重启是不会重新读取消息的,强制断电会导致重复或者丢失罢了
点赞 回复 分享
发布于 2023-07-30 17:25 湖南

相关推荐

找工作勤劳小蜜蜂:自我描述部分太差,完全看不出想从事什么行业什么岗位,也看不出想在哪个地区发展,这样 会让HR很犹豫,从而把你简历否决掉。现在企业都很注重员工稳定性和专注性,特别对于热爱本行业的员工。 你实习的工作又太传统的it开发(老旧),这部分公司已经趋于被淘汰,新兴的互联网服务业,比如物流,电商,新传媒,游戏开发和传统的It开发有天然区别。不是说传统It开发不行,而是就业岗位太少,基本趋于饱和,很多老骨头还能坚持,不需要新血液。 工作区域(比如长三角,珠三角,成渝)等也是HR考虑的因素之一,也是要你有个坚定的决心。否则去几天,人跑了,HR会被用人单位骂死。
点赞 评论 收藏
分享
评论
5
13
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务