我在一个项目中与Kafka和阿克卡流使用ReactKafka连接器。我们发现,React式kafka使用它自己的调度器(akka.kafka.default dispatcher),但如果我们使用默认的akka调度器,则速度更快(React式kafka调度器~300条消息/秒,默认调度器~1300条消息/秒)我想知道使用默认的调度器是否安全。提前谢谢。
whhtz7ly1#
不,不应该使用akka的默认调度器。由于底层kafka客户端使用阻塞,它可能会阻止整个actor系统的运行。相反,您可以重新配置 akka.kafka.default-dispatcher (例如通过添加 akka.kafka.default-dispatcher.thread-pool-executor.fixed-pool-size = 32 或者更好地配置自己的调度器,并将其用于需要它的alpakka-kafka连接器用户。请参阅akka dispatchers以了解如何配置调度器。
akka.kafka.default-dispatcher
akka.kafka.default-dispatcher.thread-pool-executor.fixed-pool-size = 32
1条答案
按热度按时间whhtz7ly1#
不,不应该使用akka的默认调度器。由于底层kafka客户端使用阻塞,它可能会阻止整个actor系统的运行。
相反,您可以重新配置
akka.kafka.default-dispatcher
(例如通过添加akka.kafka.default-dispatcher.thread-pool-executor.fixed-pool-size = 32
或者更好地配置自己的调度器,并将其用于需要它的alpakka-kafka连接器用户。请参阅akka dispatchers以了解如何配置调度器。