nginx和tomcat服务器优化

1.Nginx服务器优化(主要涉及到Nginx.conf文件的一些属性配置)

#一般建议小于CPU个数,一般进程运行在CPU上,而Nginx是采取居于时间的非阻塞多路复用epoll模型
1.worker_processes      
#将work process绑定到特定的cpu上,避免进程在cpu间切换开销(8核设置00000001 00000010 00000100 00001000)                     
2.worker_cpu_affinity 0001 0010 0100 1000 
#进程最大可以打开文件描述符数量502错误(系统描述符支撑最大量/进程数)   
3.worker_rlimit_nofile  
#每个进程允许的最大连接数(做静态服务器时:客户连接数=worker_connections*进程数/2    做反向代理服务器时客户连接数=worker_connections*进程数/4 )                     
4.worker_connections 200000     
#设置http里面的访问日志和错误日志的打印级别或者关闭,减少IO
5.http{ access_log offl;error_log logs/error.log crit}  
#启动内核复制模式,保持IO效率最高
6.http{ sendfile on}      
#连接时间保持长度,优点是减少创建连接,加快响应速度。但是响应的连接数量会受到限制(最高100连接,在过来的时候还没释放就创建不了新连接)                              
7.http{ keepalive_timeout 30s}
# 压缩,压缩最小资源大小,等级,等级越高,压缩效果越好,占用服务器资源越严重。
8.gzip on /gzip_min_length 1000/gzip_comp_level  
#压缩文件类型的选择,有些文件压缩效果不好选择不压缩,减少服务器性能损耗      
9.gzip_type
#最大缓存数量,文件未使用存活期
10.open_file_cache max=655350 inactive=20s;
   open_file_cache_valid 30s  #验证缓存有效时间间隔
   open_file_cache_min_uses 2 有效期内文件最少使用次数
====》20秒内达不到2次,在30秒一次的命中率检测未达到标准则移除


2.tomcat优化

1.首先优化Tomcat安装目录bin目录下的catalina.sh文件
(1)设置堆内存
JAVA_OPTS=$JAVA_OPTS -server -Xms1024m -Xmx2048m
(2)设置PermGen内存(java.lang.OutOfMemoryError)jdk1.8不用设置
-XX:PermSize=256m -XX:MaxPermSize=512m
(3)设置java是运行在一种无图形显示的模式下
-Djava.awt.headless=true

2.设置server.xml
设置的一些参数
nginx和tomcat服务器优化_第1张图片

你可能感兴趣的:(nginx和tomcat服务器优化)