- 静态文件不能放到 SLB挂载的服务下面,影响性能。出口带宽受限,费用也挺高;最好放到CDN上面
- 除了SLB有外网的域名外,其他的都是内网域名;内部服务之前的调用都得走内部网络
- linux网络参数调优
net.ipv4.tcp_tw_reuse = 0 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭 net.ipv4.tcp_tw_recycle = 0 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭 - nginx配置
性能优化-优化worker进程最大打开文件数worker_rlimit_nofile 65535; worker_connections 1024-->10240; worker_processes 1-->16;(根据实际情况设置,可以设置成auto) 即listen后面设置 listen 80 backlog=1024; 等待连接队列的最大长度。备注:worker_process 代表工作进程数
worker_connection # 单个进程允许的客户端最大连接数(65535/worker_process)
从用户的角度,http 1.1协议下,由于浏览器默认使用两个并发连接,因此计算方法:
-
nginx作为http服务器的时候:
max_clients = worker_processes * worker_connections/2 -
nginx作为反向代理服务器的时候:
max_clients = worker_processes * worker_connections/4
- jedis连接池优化;
-
Redis 公网地址变更为内网地址;
-
Redis Session 超时设置缩短,用于释放 Redis 连接;
-
慢SQL优化(RDS的 CloudDBA 非常好用);
-
添加只读实例,自动读写分离;
-
优化 backlog;
-
添加读写分离实例数量。
本文探讨了提升网络与服务性能的多种策略,包括避免在SLB下放置静态文件以优化性能,利用CDN分发静态资源,调整Linux网络参数如tcp_tw_reuse和tcp_tw_recycle,优化nginx配置如worker进程数和连接数,以及Redis连接池优化等。
2058

被折叠的 条评论
为什么被折叠?



