我检查了gemfire服务器的日志,在我的日志文件中发现了以下语句。
Rejected connection from Server connection from [client host address=XXX.XXX.XXX.XX; client port=XXXX1] because incoming request was rejected by pool possibly due to thread exhaustion
Rejected connection from Server connection from [client host address=XXX.XXX.XXX.XX; client port=XXXX2] because incoming request was rejected by pool possibly due to thread exhaustion
....
可能的原因是什么?我如何找到根本原因?
我使用的是Gemfire 9.8.6,大部分的区域都是复制的,客户端通过Spring Data Gemfire的Caching Proxy连接到服务器区域。客户端通过Spring Data Gemfire的Caching Proxy连接到服务器区域。
gemfire.properties [Server]
根据Cache服务器的日志文件,我发现我的Handshaker最大池子大小:4,最大连接数=800,最大线程数=0。
Handshaker max Pool size: 4
CacheServer Configuration: port=51XX max-connections=800 max-threads=0 notify-by-subscription=true socket-buffer-size=1250000
我把redhat的文件描述符软限制改为8192,硬限制改为81920,进程数(nproc)软限制改为501408,硬限制不限。
谢谢你的帮助
每当 GemFire 服务器没有足够的资源来处理进入的请求量时,该消息通常会被记录下来。我建议查看一下 微调你的客户端服务器配置 和 确保您有足够的插座.希望能帮到你。干杯。