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

高性能静态网站:

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

高性能动态网站:

tomcat优化:
一、增长tomcat能够使用的内存,配置使用内存最大值和最小值(catalina.sh)
二、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或如下值
相关文章
相关标签/搜索