我用 Java 编写了发布者和订阅者。在服务器级别也进行了集群。能够以 500 TPS(每秒事务)的速率发布和订阅 30 KB 的消息。
但我想将我们的性能提高到 2000 TPS 以上。请建议如何实现相同的目标。
我已经将 Java 与 Apache Camel 一起使用。
我用 Java 编写了发布者和订阅者。在服务器级别也进行了集群。能够以 500 TPS(每秒事务)的速率发布和订阅 30 KB 的消息。
但我想将我们的性能提高到 2000 TPS 以上。请建议如何实现相同的目标。
我已经将 Java 与 Apache Camel 一起使用。
您使用了 nats-streaming-server 标签。只需确定您指的是 NATS Streaming 还是 NATS。
对于 NATS Streaming,publish
调用是与服务器的请求-回复,因此速度较慢。如果您提供AckHandler
,您将能够更快地发布,因为发布调用现在是非阻塞的。服务器仍然发送发布确认,但处理程序是异步调用的。有关使用示例,请参阅https://github.com/nats-io/java-nats-streaming#asynchronous-publishing。