scala - 进行并行常量轮询和处理的最佳方法

时间:2018-04-20 21:54:46

标签: multithreading scala

我试图弄清楚以异步和非阻塞方式进行常量轮询的最佳方法是什么。应用程序的整个目标是启动几个线程,并且每个线程对外部服务(kafka)进行持续轮询以获取数据;然后,每个线程都可以处理该数据或将其交给其他线程。我没有看到使用scala INSERT INTO mysql_table (SELECT * FROM temp_table) 执行此操作的方法,因为它需要"Duplicate entry '0' for key 'PRIMARY'") [SQL: 'INSERT INTO mysql_table SELECT * FROM mysql_temp_table' 值。我可以把它设置为一年,但这仍然不是一个好的解决方案。例如Future有什么指针吗?

1 个答案:

答案 0 :(得分:1)

有几个Async Non-Blocking Kafka库。您可以在其中任何一个中编写消费者来从Kafka主题中提取数据。

https://github.com/cakesolutions/scala-kafka-client

https://github.com/akka/reactive-kafka