当一个事件产生时,Kafka 生产者代码将由哪个团队处理

Kafka producer code will be handled by which team when an event is generated

我对kafkatopic/producer/consumer和broker有一定的了解

我想了解这在现实世界中是如何工作的。

例如考虑下面的用例。

  1. 用户与 Web 应用程序交互
  2. 当用户点击某物时,会生成一个事件
  3. 所以会有一个 kafka 生产者 运行 当一个事件产生时将消息写入 atopic
  4. 然后是消费者(例如:spark 应用程序从主题中读取数据并处理数据)

谁负责管理生产者代码?前端 java/Web 开发人员的?因为 Web 开发人员熟悉事件和 tomcat 服务器日志。

任何人都可以解释开发人员的术语和负责每个部分的责任。

在“标准”场景中,涉及以下 people/roles:

  1. 基础设施开发:设置Kafka实例(f.e。openshift/strimzi)
    • 管理主题、用户
  2. 前端开发:创建前端(f.e.react)
  3. 后端开发:实现后端系统(f.e。asp .net 核心)
    • 处理数据库连接、日志记录、监控、IAM、业务逻辑、处理事件,生成 kafka 事件,...)
  4. App Dev 编写或管理“其他应用程序”(f.e.spark 应用程序)的任何人。 消耗(提交) kafka 事件

由于 producer/consumer kafka API 有很多实现,因此它与语言无关,(see some libs). But you are right the dev implementing the features regarding kafka should at least be familiar with pub-sub

请注意,我们在谈论角色,因此不一定需要四个人参与,也可能只有一个人完成整个工作。此外,这只是一个通用的现实世界场景,在您的特定 usecase/environment.

中可能完全不同