apache-kafka API调用后触发事件

91zkwejq  于 2022-11-01  发布在  Apache
关注(0)|答案(1)|浏览(105)

我有一个API调用,假设它是一个表单提交。

  • 〉我想给填写表单的用户发送电子邮件
  • 〉我想用一堆其他数据来分析表单响应
  • 〉向管理员发送通知
    这样我可能有n个事件要根据特定的表单触发(可能有很多类型的表单,我想根据提交的表单触发)。我该怎么做?
    最初,我想在一个util文件中包含执行这些触发器的所有逻辑,并基于表单来运行这些函数。但我能感觉到它的伸缩性不好。后来我找到了Kafka,并认为我可以适合我的用例。
    我可以把所有的触发器作为一个主题,在消费者中,我将有逻辑来执行每个主题。一旦表单被填充,生产者,即表单API将发送消息(表单数据)到它订阅的所有主题,Kafka将处理剩下的事情。
    这听起来像是一个好的解决方案吗?或者我只是在重新发明轮子?另外,如果新的触发器不断出现,比如我的客户(人类XD)请求这样做,并在提交表单时进行验证/分析,那么我如何在消费者API中高效地添加逻辑来处理该触发器。
    或者我需要考虑一个分布式系统来处理这个问题吗?
6l7fqoea

6l7fqoea1#

当然,HTTP服务器可以在表单提交时做任何它想做的事情,包括调用远程HTTP服务而不是使用任何队列。但是由于Kafka是异步的,它可能不适合用于请求-回复有效负载,例如表单验证。
您不需要在生产者代码中“添加消费者触发器”。您只需要生产主题,就可以了。消费者从您为其配置的主题中进行轮询,并相应地处理数据,而不管这些主题中产生了什么

相关问题