1.目标

在这个Apache Kafka教程中,我们将学习Apache Kafka  Queuing 的概念  。基本上,Kafka中的排队是传统消息传递的模型之一。所以,让我们首先简要介绍Kafka作为消息传递系统,这将有助于我们更好地理解Kafka排队。此外,我们将看到Kafka Queue的一些应用程序更好地清除这个概念。那么,让我们从Kafka Queuing教程开始吧。

卡夫卡队列

2.卡夫卡作为消息系统

传统上有两种消息传递模型,例如Kafka中的Kafka排队和发布 - 订阅。
让我们详细讨论两个Kafka模型:

测试你对卡夫卡的了解程度

一世。卡夫卡队列

在此Kafka消息传递系统中,Kafka消费者池   可以从服务器读取。此外,每个记录都在这里转到其中一个。它有一些优势和一些弱点。它的优势在于它允许我们在多个消费者实例上划分数据处理,这有助于我们扩展处理。但它的弱点是,它不是多用户,只要一个进程读取它已经消失的数据。

II。Kafka Publish-Subscribe

在这个Kafka Publish-Subscribe系统中,记录被广播给所有Kafka消费者。它允许我们将数据广播到多个进程。但是,它也有一些限制,例如无法进行扩展处理,因为每个消息都发送给每个用户。
在卡夫卡,这两个概念由卡夫卡消费者群体推广。但是,Kafka中的消费者群体允许我们使用Kafka队列来分割处理集合上的处理。这里的进程集合指的是消费者组的成员。此外,Kafka允许我们使用Kafka发布 - 订阅向多个消费者群体广播消息。
学习Apache Kafka工作流程| Kafka Pub-Sub Messaging
因此,Kafka模型的主要优点是每个Kafka主题都可以使用这些属性 - 它可以扩展处理,也可以是多用户。因此,这意味着我们不必选择其中一个。
与传统的消息系统相比,Kafka具有更强的订购保证。
由于传统系统中的处理没有并行性,因此Kafka在并行性概念上表现良好。因为Kafka可以在一组消费者流程中提供订购保证和负载平衡。

3.需要卡夫卡队列

Kafka Queuing应用程序之一是Microservice架构。它本质上要求某种消息排队系统。让我们先了解微服务架构。它是将互连的单片应用程序解耦为不同的独立模块以及外部数据源以及API的概念。因此,为了处理微服务 - 外部源和微微服务和通信,消息队列就出现了。
此外,虽然我们将一个大的单片应用程序划分为更小的微服务(松散耦合),但那时REST API调用增加了这些微服务,并且与外部数据源的连接数也增加了。
阅读Kafka性能调优 - Kafka优化的方法
但是,保持这个庞大的系统同步是不可取的,因为它可以使整个应用程序无响应。而且,它首先可以打破分成微服务的整个目的。
因此,当时拥有Kafka使整个数据流更容易。因为它是分布式的,高度容错的,并且它还通过Zookeeper等服务持续监控代理节点。因此,它使工作效率提高。

4. ML Solutions Pipeline中的消息队列

除此之外,我们还可以使用Kafka排队等各种ML解决方案管道。但是,ML解决方案构建为:
用户界面(在客户端,移动/网络) - →API服务器和数据库 - →机器学习(黑盒子)。
但是,ML黑盒子计算量很大,并且在阻塞同步模式下使这些请求实际上并不容易。此外,在这种情况下,所有请求都可以在队列中并配置使用者API以逐个获取这些请求并将其提供给ML黑盒子。因此,虽然涉及计算密集型任务,但此管道可以轻松处理,例如从数千个图像中识别对象,即使不丢失任何请求也可能需要相当长的时间。
让我们修改Apache Kafka Producer For Beginners 2018
基本上,微服务部署到容器中,例如通过容错的分布式Kafka代理  节点集群进行  调解,并使用它监控它的Zookeeper,这似乎是一种进取软件开发的新方法。
所以,这完全是关于Kafka Queuing:Kafka作为消息传递系统。希望你喜欢我们的解释。

5.结论

因此,我们已经看到了Kafka排队的完整概念。此外,我们讨论了为什么Kafka作为消息排队。与此同时,我们学习了两个模型--Kafka队列和Kafka发布 - 订阅。此外,我们看到了为什么我们需要Kafka Queuing。最后,我们讨论了ML解决方案管道中的消息队列。但是,如果在Kafka中发生任何关于排队的查询,请随时通过评论部分询问。
另请参阅 -  
最佳Apache Kafka测验 - 3分钟解决,以
供参考

Kafka排队:Apache Kafka作为消息传递系统的更多相关文章

  1. Apache Kafka - 介绍

    原文地址地址: http://blogxinxiucan.sh1.newtouch.com/2017/07/12/Apache-Kafka-介绍/ Apache Kafka教程 之 Apache Ka ...

  2. Apache Kafka教程

    1.卡夫卡教程 今天,我们正在使用Apache Kafka Tutorial开始我们的新旅程.在这个Kafka教程中,我们将看到什么是Kafka,Apache Kafka历史以及Kafka的原因.此外 ...

  3. Apache Kafka工作流程| Kafka Pub-Sub Messaging

    1.目标 在我们上一篇Kafka教程中,我们讨论了Kafka Docker.今天,我们将讨论Kafka Workflow.此外,我们将详细介绍Pub-Sub Messaging的工作流程以及Queue ...

  4. 大规模使用 Apache Kafka 的20个最佳实践

    必读 | 大规模使用 Apache Kafka 的20个最佳实践 配图来源:书籍<深入理解Kafka> Apache Kafka是一款流行的分布式数据流平台,它已经广泛地被诸如New Re ...

  5. Apache Kafka Consumer 消费者集

    1.目标 在我们的上一篇文章中,我们讨论了Kafka Producer.今天,我们将讨论Kafka Consumer.首先,我们将看到什么是Kafka Consumer和Kafka Consumer的 ...

  6. Apache Kafka Producer For Beginners

    在我们上一篇Kafka教程中,我们讨论了Kafka Cluster.今天,我们将通过示例讨论Kafka Producer.此外,我们将看到KafkaProducer API和Producer API. ...

  7. 【转载】Apache Kafka:下一代分布式消息系统

    http://www.infoq.com/cn/articles/kafka-analysis-part-1 Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩 ...

  8. Apache Kafka —一个不同的消息系统

    Apache已经发布了Kafka 0.8,也是自从成为Apache软件基金会的顶级项目后Kafka的 第一个主版本. Apache Kafka是发布—订阅消息传递,实现了分布式提交日志,适用于离线和在 ...

  9. Apache Kafka:下一代分布式消息系统

    [http://www.infoq.com/cn/articles/apache-kafka/]分布式发布-订阅消息系统. Kafka是一种快速.可扩展的.设计内在就是分布式的,分区的和可复制的提交日 ...

随机推荐

  1. 指数基金介绍专栏(4):上证50AH优选指数

    作者:牛大 | 公众号:定投五分钟 大家好,我是牛大.每天五分钟,投资你自己:坚持基金定投,终会财富自由! 想必大家会有疑问,什么是上证50AH优选指数?今天老师给大家答疑解惑,详细介绍一下上证50A ...

  2. S1_搭建分布式OpenStack集群_05 glance安装配置

    一.基本简介         镜像服务(glance)使用户能够发现,注册和检索虚拟机镜像. 它提供了一个REST API,使您可以查询虚拟机镜像元数据并检索实际镜像. 您可以将通过镜像服务提供的虚拟 ...

  3. jar包更新

    打包新的jar包 java -jar xx.jar 本地测试后 删除旧的jar包 然后要重启jar包

  4. springcloud - bus

    在重新设置了后的bootstrap.yml和application.yml后,可以看到bus-refresh的端点请求了.在之前bootstrap也可以设定哪个端点是可见,哪个未见. 如: #actu ...

  5. DotNetty 常用库

    https://github.com/Azure/DotNetty DotNetty中几个重要的库(程序集): DotNetty.Buffers: 对内存缓冲区管理的封装. DotNetty.Code ...

  6. 16-ESP8266 SDK开发基础入门篇--TCP 服务器 非RTOS运行版,串口透传(串口回调函数处理版)

    https://www.cnblogs.com/yangfengwu/p/11105466.html 其实官方给的RTOS的版本就是在原先非RTOS版本上增加的 https://www.cnblogs ...

  7. java如何判断溢出

    public int reverse2(int x) { double ans=0; int flag=1; if(x<0){ flag=-1; } x=x*flag; while(x>0 ...

  8. USACO 2009 Open 干草塔 Tower of Hay

    USACO 2009 Open 干草塔 Tower of Hay Description 为了调整电灯亮度,贝西要用干草包堆出一座塔,然后爬到牛棚顶去把灯泡换掉.干草 包会从传送带上运来,共会出现N包 ...

  9. flask 开发接口测试平台

    flask 开发接口测试平台 数据库,forms  views  视图, 数据库如下: # encoding: utf-8 ''' @author: lileilei @file: models.py ...

  10. CMU Database Systems - Database Recovery

    数据库数据丢失的典型场景如下, 数据commit后,还没有来得及flush到disk,这时候crash就会丢失数据 当然这只是fail的一种情况,DataBase Recovery要讨论的是,在各种f ...