我有一个生产者应用程序,可以将数据发送到Kafka主题,但是每当它从源接收时,就仅发送一次。我还有一个消费者应用程序(Spark),该应用程序始终保持运行状态,并在生产者向其发送数据时从Kafka接收数据。
由于消费者始终保持运行,因此有时会浪费资源。而且,由于我的生产者仅偶尔发送一次数据,因此只有在kafka主题获取任何数据时,才有任何方法可以触发消费者应用程序吗?
听起来像您不应该使用Spark,而是运行一些可以触发以在Kafka事件上运行代码的无服务器解决方案。
否则,请运行Cron查看消费者的滞后。定义一个阈值以提交您的代码,然后仅从Kafka批量读取,然后]