2

我想对具有以下要求的客户端列表进行 RPC:

  • 服务器不知道客户端(暗示一种经纪人?)并且客户端不知道服务器
  • 可能有多个客户端 - 它们分担处理 RPC 的负载
  • RPC 是异步的
  • 非常快(往返 < 1ms)
  • optional :提供故障转移机制。

可以使用并非真正用于此目的的底层工具来完成(Hazelcast 就是一个例子)。

你会用什么来满足这些要求?

谢谢!

4

2 回答 2

2

我会使用 ActiveMQ,因为它很容易上手和单元测试。

它每秒可以支持 20K 条消息,这可能就足够了。

如果您需要比这更快的速度,请考虑使用 HornetQ,但您需要测试它是否适合您的高性能需求。

可以很容易地将一个 JMS 提供程序切换到另一个提供程序。


如果你需要真正的高性能,你可以考虑我写的一个库,Java Chronicle。它不是为负载平衡而设计的,但每秒可以支持来自单个生产者的超过一百万条消息。

于 2013-05-06T12:53:45.290 回答
0

请参阅此异步框架:https ://github.com/reactor/reactor 和幻灯片:http ://www.slideshare.net/eonnen/high-performance-network-programming-on-the-jvm-oscon-2012 。

于 2014-06-12T03:22:17.823 回答