最近有遇到这样一个问题: proxy服务器(可以是LVS haproxy nginx),这里以Ningx为例,在进行prxoy集群代理的时候,如何来判断单个服务器的连接处理能力呢? proxy服务器load 带宽 cpu都无任何压力,唯一可能有问题就是TCP连接问题:现在单个服务器建立连接数到最高达8k,平时6.5k,Timeout最高2K,一般1.3K. 服务器随机端口开到61000.
端口与建立连接数应该是无直接关系.但proxy类型的服务器如何来确定他的并发处理能力呢?
请高手指点.这个其中的关系?如何进行容量的计算.多谢!!
你这个问题并不好解答,因为像Squid、Haproxy、Nginx、varnish这样的反向代理软件都可以同时支撑数万的HTTP连接,而网络又牵涉到操作系统内核的配置,系统参数不同,可能支撑的连接数就不同。参数优化得好,数量可能又会上升。
一般来说后端的运算时间肯定比前端的响应时间要久,如果后端支撑不了大并发,再怎么考虑前端代理的最大并发数也没有什么意义。最好是通过接口将后端的负载传给前端,让前端进行优先级的分配。
你用一台服务器同时做代理和后端,考虑这类问题没有什么必要,一般都是多台服务器才考虑,毕竟前端还在运行而后端无响应的情况要多得多。