Linux运维最佳实践之网站调优

高性能静态网站:

1、静态页面中针对图片进行浏览器(客户端)缓存,如公共JavaScript(jQuery,jQuery-1.12.1.min.js)进行缓存
2、对网站输入内容压缩(gzip)
3、配置静态资源防盗链,通过判断请求头中referer进行域名防盗
4、图片剪裁,通过系统自带工具进行图片剪裁
5、减少cookie携带,业务分离,如 img.dayutang.cn 用于提供图片和css的访问,www.dayutang.cn提供静态页面的访问
6、静态页面的安全下载,进行内容资源鉴权,
        使用 ngx_http_secure_link_moudle模块
        使用nginx中的X-Accel-Redirect控制头部
7、使用cdn加速用户访问

高性能动态网站:

tomcat优化:
1、增加tomcat可以使用的内存,配置使用内存最大值和最小值(catalina.sh)
2、mysql jdbc连接丢失配置jdbc重试机制:(jdbc:mysql://mysql-ip;3306/?autoReconnect=true)
 
 

nginx网站调优:

  • worker_processes:配置多少个工作进程,设置为与服务器核心(core)数量相同
  • work_cpu_affinity(重要优化项):将进程与CPU绑定,提高了CPU Cache 的命中率,从而减少内存访问损耗,提高程序的速度
  • sendfile:对于静态大文件,启用sendfile加速文件读取
  • tcp_nopush:在Linux socket 上启用 TCP_CORK选项,和sendfile合用,加速大文件读取
 

针对访问超时设置:(对于大型繁忙网站是重要的调优项目)

  • client_header_timeout:客户端必须在此指定的时间内把请求的header传输完成,请设置成5s或以下值,对于抵挡慢速攻击有作用
  • client_body_timeout:nginx2次连续读取客户端请求体的超时时间,请设置成5s或以下值
  • keepalived_timeout:定义保活时间,一般建议是60s
  • proxy_connect_timeout:nginx2次连续向后端服务器发送请求的超时时间,请设置成5s或以下值
  • proxy_send_timeout:nginx2次连续读取后端服务器返回的超时时间,请设置成5s或以下值
 
 

猜你喜欢

转载自www.cnblogs.com/ipyanthony/p/10439512.html