Tomcat提高并发

时间:2021-12-14 01:30:08

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&plus;

    调整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&plus;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. Python 安装easy&lowbar;install详解

    easy_install 真的特别方便.我之前安装pip.wheel.bs4.requests等都是用python setup.py install 安装,操作步骤还不算很烦(但是对比easy_ins ...

  2. Objective-O Runtime 运行时初体验

    Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理.这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一 ...

  3. Tip8&colon;Unity中诸如 Awake&lpar;&rpar; Start&lpar;&rpar; Update&lpar;&rpar;等函数的 执行顺序

    Unity脚本中有很多的事件函数,下面是各种函数的执行顺序: 1.reset(); 2.Awake(); 3.OnEnable; 4.OnLevelWasLoaded(); 5.Start(); 6. ...

  4. js正则表达式和replace

    javascript中replace与正则表达式 replace()最简单的算是能力就是简单的字符替换.示例代码如下: <script language="javascript&quo ...

  5. 基于WEB 的认证防火墙的设计

    项目要求: 1.  采用Linux iptbles作为接入防火墙,默认放行所以访问入口的80端口 2.  访问者通过http://x.x.x.x 访问防火墙的认证系统,进行账号的登陆操作,同时系统对用 ...

  6. Javascript编码规范,好的代码从书写规范开始,增强代码的可读性,可维护性,这是相当重要的!

    1. 前言 JavaScript在百度一直有着广泛的应用,特别是在浏览器端的行为管理.本文档的目标是使JavaScript代码风格保持一致,容易被理解和被维护. 虽然本文档是针对JavaScript设 ...

  7. 【Tools】ubuntu16&period;04安装搜狗输入法

    Ubuntu16,04 安装搜狗输入法 1.下载搜狗输入法的安装包 下载地址为:http://pinyin.sogou.com/linux/ 2.按键Ctr+Alt+T打开终端,输入以下命令切换到下载 ...

  8. C语言中关于运算符优先级别

    在一一个表达式中可能有多个不同的运算符结合起来,由于运算符的优先级别不一样,可能会形成得到的结果不同. 优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级. 对于相同的优先级, ...

  9. 基于Consul的数据库高可用架构【转】

    几个月没有更新博客了,已经长草了,特意来除草.本次主要分享如何利用consul来实现redis以及mysql的高可用.以前的公司mysql是单机单实例,高可用MHA加vip就能搞定,新公司mysql是 ...

  10. O&lpar;1&rpar;时间复杂度求栈中最小元素

    import java.util.Stack; /** * 功能:O(1)时间复杂度求栈中最小元素 * 思路:空间换取时间,使用两个栈,stack1栈存储数据,stack2栈存储最小值: * stac ...