我正在使用cassandra作为后端处理spring / java webapp;该应用程序可能会被数百名客户同时使用。
我看到默认的Cluster PoolingOptions连接池设置(使用协议v3)是:
LOCAL hosts: core = max = 1
REMOTE hosts: core = max = 1
默认的maxRequestsPerConnection设置(使用协议v3)是:
1024 for LOCAL hosts, and 256 for REMOTE hosts.
这些默认设置是否足以满足我们的使用要求?
如果没有,我可以从哪些池选项开始?
答案 0 :(得分:2)
我建议使用默认的PoolingOptions
。除非你有充分的理由,否则不应该触及它。
请注意,配置是每个主机,而不是整个群集。
此外,默认情况下,cassandra一次只处理128个本机传输请求(native_transport_max_threads),因此配置PoolingOptions
以处理每个连接超过1024个请求的效用很低。
最后,在具有少量节点的基准测试和高吞吐量方案期间,将每个主机的连接数增加到8个可以显示吞吐量的一些改进,但是当您添加更多C *主机时,改进变得微不足道。 / p>