Centos7环境下Tomcat 启动慢的解决方案
1、增加熵值(本质增加random)安装软件
>> Yum –y install rng-tools
启动熵服务
>> Systemctl start rngd(或service rngd start)
2、修改java环境配置文件
$JAVA_HOME/jre/lib/security/Java.security文件
>> vi securerandom.source
#securerandom.source=file:/dev/urandom
securerandom.source=file:/dev/./urandom
3、修改tomcat配置文件
>> vi Catalina.sh
JAVA_OPTS="$JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"

server.xml相关配置
<Connector port="8002"
protocol="org.apache.coyote.http11.Http11AprProtocol" #apr模式
URIEncoding="UTF-8" #编码
acceptorThreadCount="4" #接收线程数目
pollerThreadCount="4" #用来处理轮询事件的线程的数量
acceptCount="200" #处理队列中的请求数
maxConnections="3000" #最大连接数
maxThreads="1000" #最大线程数
minSpareThreads="500" #Tomcat初始化时创建的线程数
processorCache="500" #规定多少processor对象有能得到缓存,-1无限制,默认为200
connectionTimeout="20000"/> #连接超时
<Host><Context path="" docBase="appname"/></Host>

catalina.sh文件
JAVA_OPTS="
$JAVA_OPTS
-server -Xms3500m -Xmx3500m ##-Xms与-Xmx设成一样的值,避免JVM因为频繁的GC导致性能大起大落
-Djava.awt.headless=true #一种系统模式
-Djava.library.path=/usr/local/apr/lib #apr依赖
-Djava.security.egd=file:/dev/./urandom #解决熵值不够的问题,使用伪随机函数(针对centos7或者Linux4以上版本)
-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8" #解决中文日志乱码

APR安装(默认安装目录 /usr/local/apr/lib)
安装依赖
yum install apr-devel
yum install openssl-devel 注意:ssl版本要求1.0.2以上
yum install gcc
yum install make
1、上传apr压缩包
2、解压
3、进入解压目录
4、执行./configure
5、执行make(可以不修改)
注:出现报错需要修改configure文件
1、编辑 configure文件,查找 $RM "$cfgfile" 这个地方,用#注释掉
2、在configure里面 RM='$RM -f'这里的$RM后面一定有一个空格。 如果后面没有空格,直接连接减号,就依
6、执行make install
7、安装JNI wrapper库
7.1、在Tomcat/bin目录下有tomcat-native.tar.gz,解压并进入解压目录
7.2、进入native目录
7.3、执行./configure --with-apr=/usr/local/apr
7.4、执行make,执行make install

SSL版本升级(1.0.1e升级为1.0.2或1.0.2h)
1、手动下载压缩包或wget https://www.openssl.org/source/openssl-1.0.2.tar.gz
2、更新zlib >>yum install -y zlib
3、 >> tar zxf openssl-1.0.2.tar.gz
>> cd openssl-1.0.2
>> ./config shared zlib
>> make
>> make install
>> mv /usr/bin/openssl /usr/bin/openssl.bak
>> mv /usr/include/openssl /usr/include/openssl.bak
>> ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
>> ln -s /usr/local/ssl/include/openssl /usr/include/openssl
>> echo “/usr/local/ssl/lib” >> /etc/ld.so.conf
>> ldconfig -v
4、检查是否升级成功
>> openssl version -a

Tomcat提高并发的更多相关文章

  1. tomcat 高并发配置 与优化

    公司的一个服务器使用Tomcat6默认配置,在后台一阵全点击服务器就报废了,查了一下就要是PERMSIZE默认值过小造成(16-64) TOMCAT_HOME/bin/catalina.sh 添加一行 ...

  2. 调整Tomcat的并发线程到5000+

    调整Tomcat的并发线程数到5000+ 1. 调整server.xml的配置 先调整maxThreads的数值,在未调整任何参数之前,默认的并发线程可以达到40. 调整此项后可以达到1800左右. ...

  3. SQL Server数据库读写分离提高并发性

    在一些大型的网站或者应用中,单台的SQL Server 服务器可能难以支撑非常大的访问压力.很多人在这时候,第一个想到的就是一个解决性能问题的利器——负载均衡.遗憾的是,SQL Server 的所有版 ...

  4. STM 软件事务内存——本质是为提高并发,通过事务来管理内存的读写访问以避免锁的使用

    对Java程序员来说,我们对面向对象的编程(OOP)自然都是烂熟于胸的,但语言也极大地影响了我们构建面向对象应用程序的方式.(现在的OOP已经和Alan Kay当初创造这个词时候的初衷大不相同了,他的 ...

  5. nginx配置优化提高并发量

    1 nginx配置优化提高并发量 worker_processes 2; 这个按照CPU的核数来决定 2 worker_connections 65535; 这个一般设置65535即可 每个进程允许的 ...

  6. tomcat高并发配置

    最近在项目中负责Tomcat高并发优化方案写一写新得. 优化1)tomcat默认的并发是75,可以启用线程池根据生产环境硬件设定线程池大小. <Executor name="tomca ...

  7. Redis+Kafka异步提高并发

    Redis+Kafka异步提高并发 Redis+Kafka异步提高并发 设计 实现 提交请求接口 Kafka消费队列 异步处理Service 客户端轮询获取结果 Redis集群节点配置 KafKa集群 ...

  8. 提高tomcat的并发能力

    1.Apache + Tomcat 结合起来用Apache负责静态页面,Tomcat负责动态页面,同时减少connectionTimeout的时间,以应对并发量大线程回收来不及的情况. 2.压力过大的 ...

  9. Tomcat高并发配置优化

    用的JMeter在自己电脑上测试的.Ubuntu10.04(x64)内存2G,cpu E5400 主频2.7.jdk1.6.0_27(x64) , tomcat6.0.33(x64) , oracle ...

随机推荐

  1. [图解tensorflow源码] Simple Placer节点布放算法

  2. ThinkPhp5学习之新手博客

    前端框架来源网络,后端框架采用 ThinkPhp 5 开发 参考资料:哔哩哔哩  ThinkPHP5.1新手博客项目实战 项目地址:https://github.com/yjy1/tp5

  3. 为什么继续选择DELPHI?

    已经钻DELPHI很深了,当然现在DELPHI是过了最辉煌的时代.但为什么要继续下去,而不转向其它的?这是不是死脑筋? 我看了一下C#的LINQ的产生,然后又被实体框架所代替.思考了一下: 1)LIN ...

  4. kali linux修改更新源及更新

    1.修改sources.list源文件: leafpad /etc/apt/sources.list #aliyun 阿里云 deb http://mirrors.aliyun.com/kali ka ...

  5. VS2010调试和头文件路径设置

    1:VS2010 release 调试C/C++ -> 常规 -> 调试信息格式, 修改为程序数据库(/Zi)C/C++ ->优化 -> 优化,修改为已禁用(/Od)链接器 - ...

  6. 2115: [Wc2011] Xor

    2115: [Wc2011] Xor 链接 分析: 对于图中的一个环,是可以从1到这个环,转一圈然后在回到1的,所以可以一开始走很多个环,然后在走一条1到n的路径. 那么可以求出所有的环,加入到线性基 ...

  7. iOS开发者证书-详解

    iOS开发者证书-详解/生成/使用 本文假设你已经有一些基本的Xcode开发经验, 并注册了iOS开发者账号. 相关基础 加密算法 现代密码学中, 主要有两种加密算法: 对称密钥加密 和 公开密钥加密 ...

  8. iTerm的安装以及配置Oh My Zsh

    iTerm说简单点就是Windows的命令提示符,可能说这个大家感觉没用过,其实也就是人们经常使用CMD,相当于苹果的终端,但是比自带的终端强大多了. 本文就是简单的说一下安装和简单的配置过程. 首先 ...

  9. 180807-Quick-Task 动态脚本支持框架之Groovy脚本加载执行

    Quick-Task 动态脚本支持框架之Groovy脚本加载执行 上一篇简答说了如何判断有任务动态添加.删除或更新,归于一点就是监听文件的变化,判断目录下的Groovy文件是否有新增删除和改变,从而判 ...

  10. 17-使用公共 Registry

    Docker Hub 是 Docker 公司维护的公共 Registry.用户可以将自己的镜像保存到 Docker Hub 免费的 repository 中.如果不希望别人访问自己的镜像,也可以购买私 ...