我需要从不可靠的Web套接字连接中记录并流入Kafka。 我们的Kafka集群非常可靠,我们可以提供高可用性。
使Web套接字连接尽可能可靠的最佳方法是什么?我想尽量减少数据丢失。
一种解决方案是让多个进程或Web套接字客户端监听并流式传输到多个Kafka主题。然后使用Kafka流进行过滤。这仅在我获得的每条消息都具有唯一ID时才有效,但并非总是如此。
另一种解决方案是监控Web套接字连接并重新启动或重置它。但后来我可能会丢失数据。还是依靠网络插座心跳? 或编写我自己的错误处理程序?
来自Java的哪些框架/库在这个领域做得最好?目前,我使用org.java-websocket。
中的Web套接字客户端我认为这是Web套接字和Kafka生产者开发中非常标准的用例,所以我确信我不需要重新发明轮子。