我想对具有以下要求的客户端列表进行RPC:
服务器不知道客户端(暗示一种代理?),而服务人员也不知道服务器
可能有几个客户端-他们共享负载来处理RPC
RPC是异步的
非常快(往返时间可选:提供故障转移机制。
可以使用并非真正针对此目的的基础工具来完成(Hazelcast是一个示例)。
您将如何使用这些要求?
谢谢!
最佳答案
我将使用ActiveMQ,因为它很容易入门和进行单元测试。
它每秒可以支持20K条消息,这可能就足够了。
如果您需要更快的速度,请考虑使用HornetQ,但是您需要对其进行测试以适合您的高性能需求。
可以很容易地将一个JMS提供程序切换为另一个。
如果您需要真正的高性能,可以考虑我写的Java Chronicle库。它不是为负载平衡而设计的,但每秒可以支持来自单个生产者的一百万条消息。