加入收藏 | 设为首页 | 会员中心 | 我要投稿 惠州站长网 (https://www.0752zz.com.cn/)- 办公协同、云通信、物联设备、操作系统、高性能计算!
当前位置: 首页 > 业界 > 正文

Tomcat安装、配置、优化及负载均衡详解

发布时间:2018-09-19 03:44:46 所属栏目:业界 来源:rocomp
导读:副标题#e# 9月15日技术沙龙 | 与东华软件、AWS、京东金融、饿了么四位大咖探讨精准运维! 一、常见JavaWeb服务器 1、WebLogic:是BEA公司的产品、WebSphereAS:是IBM公司的产品、JBossAS:红帽公司的产品,可以自行了解 2、Tomcat服务器:Sun公司在推出的小

在/bin目录下的catalina.bat可以直接通过Tomcat设置JVM内存参数,windows下打开catalina.bat文件,在大概中间的位置,找到

  1. set "JAVA_OPTS=%JAVA_OPT% -server -Xms2048m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m -Djava.awt.headless=true" 

通过内存设置充分利用服务器内存

  • -server:模式启动应用慢,但是极大程度提高运行性能
  • -Xms2048m -Xmx2048m:设置的是堆内存

java8开始,PermSize被MetaspaceSize代替,MetaspaceSize共享heap,不会再有java.lang.OutOfMemoryError:PermGen space,可以不设置

  • Headless=true:适用于Linux系统,与图形操作有关,如生成验证码含义是当前的是无显示器的服务器,应用中如果获取系统显示有关的参数会抛出异常,windows系统可不用设置

可通过jmap -heap process_id查看设置是否成功

2、最大连接数配置(并发能力)

在/conf/server.xml里进行配置

在属性中将protocol属性改为

  1. "org.apache.coyote.http11.Http11NioProtocol", 

NIO模型的效率更高

加入

  1. maxThreads="500"  
  2. //当前可以同时处理的最大用户访问数 
  3.  
  4. minSpareThreads="100"  
  5. //最小空闲线程连接数,用于优化线程池 
  6.  
  7. maxSpareThreads="200" 
  8.  
  9. acceptCount="200"  
  10. //当所有的线程以分配,仍然允许连接进来,但是出于等待状态的用户数。 
  11. //等待线程数+工作线程数=总的可最大连接数,如果超过此数, 
  12. //新的连接将不会被接受,就会产生一个http错误 
  13.  
  14. enableLookups="false" 
  15. //是否允许DNS反查,如果为true,request.getRemoteHost会执行DNS查找,反向解析ip对应域名或主机名, 
  16. //当没有这样需要的时候,可以将这个功能关闭,在一定程度上提高了Tomcat服务器的性能 

四、负载均衡配置

负载均衡是提高应用负载量和容错的有效手段,可以结合Nginxs与Tomcat实现,Nginx是一款性能优异的反向代理服务器。

1、负载均衡配置实现

反向代理原理示意图:

Tomcat安装、配置、优化及负载均衡详解

负载均衡示意图:

Tomcat安装、配置、优化及负载均衡详解

负载均衡策略:

Nginx 提供轮询(round robin)、用户IP哈希(client IP)和指定权重 3 种方式

2、负载均衡时Session的处理策略

Session是Tomcat服务器上的内存空间,如果一个用户发出多个请求,却发到了多个tomcat服务器中,那么就会出现Session不同步的问题

解决方案1

(编辑:惠州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读