Tomcat+Mysql高并发配置优化讲解
1.Tomcat优化配置
(1)更改Tomcat的catalina.bat
将java变成server模式,增大jvm的内存,在文件开始位置增加
setJAVA_OPTS=-server -Xms1024m -Xmx2048m -Xss512K -XX:PermSize=128m-XX:MaxPermSize=256m setCATALINA_OPTS=-server -Xms512m -Xmx512m
如下图:
Xms:初始内存
Xmx:最大内存
(2)更改Tomcat的Server.xml
在 <Servicename="Catalina">中 增加如下配置(亲测10秒内2000并发没问题)。
<Executorname="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="800"minSpareThreads="25" maxIdleTime="60000"/> <Connectorexecutor="tomcatThreadPool" port="80"protocol="HTTP/1.1" connectionTimeout="60000" keepAliveTimeout="15" maxKeepAliveRequests="200" disableUploadTimeout="false" enableLookups="false" redirectPort="8443"/>
注意maxThreads数不应调整过大,容易产生如下错误:
2,Mysql优化配置
(1)更改MySql的my.ini(windows)或者my.cnf(linux)
max_connections=12000//最大连接数 一般在0~15000之间,尽量不要超过15000 max_user_connections=0//最大用户连接数,0为不限制 interactive_timeout=31536000//超时时间,设置为一年,避免连接池出现下图错误 wait_timeout=31536000
query_cache_size=512m //查询缓存,尽量设置大一些,避免出现下图错误
key_buffer_size=1024m query_cache_type= 1 max_allowed_packet=600m
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接
相关推荐
-
Spring Boot 定制与优化内置的Tomcat容器实例详解
1.Spring Boot 定制与优化内置Tomcat容器. > 内置的容器有三个分别是Undertow.Jetty.Tomcat,Spring Boot 对这三个容器分别进行了实现,它们上层接口都是EmbeddedServletContainerFactory,该接口也是本文的主要核心. 对于内置容器的定制与优化主要有两种方式,第一种方式是通过配置文件来配置,另外一种是通过码代码的方式.接下来主要对上述两种方式进行实现. 2.通过配置文件来定制与优化Tomcat > 配置的核心内容参考org
-
intellij idea tomcat热部署配置教程
1.设置Debugger-HotSwap 在setting界面,打开Debugger-HotSwap选项,确保勾选了Build project before reloading classes,同时选择Reload classes after compilation为Always.这样我们在编译某个修改了的java文件之后,就会利用HotSwap机制reload class,而Build project before reloading classes就确保了其他修改过的文件一起同步到部署目录.
-
Spring Boot如何优化内嵌的Tomcat示例详解
前言 本文主要给大家介绍了关于Spring Boot优化内嵌Tomcat的相关内容,分享出来供大家参考学习,下面话不多说了,来一看看详细的介绍吧. Spring Boot测试版本 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.3.RELEASE&l
-
tomcat同时使用http和https访问的配置方法
针对一个tomcat中有的项目需要使用ssl加密有些可以直接访问的情况,可通过修改tomcat/conf下的server.xml来实现.具体配置可参考下面这段代码,注意<Service name="Catalina1″>这个标签中的配置. <?xml version='1.0' encoding='utf-8'?> <Server port="8005" shutdown="SHUTDOWN"> <Listener
-
Tomcat7.0设置虚拟目录配置虚拟路径的方法讲解
Tomcat7.0设置虚拟目录 (1)目前,我们的网站站点都是放在默认的目录下:tomcat/webapps/下的.但是,在某种情况下,我们需要把站点放到其他的目录,比如:tomcat所在磁盘的空间不足: 或者为了项目的统一管理,希望放在某个特定的目录下而不是默认的目录. (2)那么我们就是用今天的方法解决这个问题(同样是修改config/server.xml文件): (3)按照下边的图片找到server.xml文件(config-----server.xml记事本打开即可) (4)打开之后拉到
-
Tomcat 配置与优化方案详解
Service.xml Server.xml配置文件用于对整个容器进行相关的配置. <Server>元素: 是整个配置文件的根元素.表示整个Catalina容器. 属性: className:实现了org.apache.catalina.Server接口的类名,标准实现类是org.apache.catalina.core.StandardServer类. Port:Tomcat服务器监听用于关闭Tomcat服务器的命令(必须) Shutdown:发送到端口上用于关闭Tomcat服务器的命令.
-
阿里云https证书tomcat配置方法
阅读本文前,请先参看前文https://www.jb51.net/article/142204.htm 当我们使用Java生成的证书使用https访问时会出现未认证的问题,证书风险 现在我们就申请一个阿里云云盾的免费证书 一.登录阿里云-->安全(云盾)-->证书服务->购买证书 在配置单中选择 "免费型DV SSL" 证书提供商品牌为:"赛门铁克" 注意:免费数字证书,最多保护一个明细子域名,不支持通配符,一个阿云帐户最多签发20张免费证书最
-
Centos7安装配置tomcat9并设置自动启动的方法
什么是Tomcat Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台.安全域管理和Tomcat阀等.由于Tomcat本身也内含了一个HTTP服务器,它也可以被视作一个单独的Web服务器.但是,不能将Tomcat和Apache HTTP服务器混淆,Apache HT
-
Tomcat+Mysql高并发配置优化讲解
1.Tomcat优化配置 (1)更改Tomcat的catalina.bat 将java变成server模式,增大jvm的内存,在文件开始位置增加 setJAVA_OPTS=-server -Xms1024m -Xmx2048m -Xss512K -XX:PermSize=128m-XX:MaxPermSize=256m setCATALINA_OPTS=-server -Xms512m -Xmx512m 如下图: Xms:初始内存 Xmx:最大内存 (2)更改Tomcat的Server.xml
-
PHP解决高并发的优化方案实例
我们通常衡量一个Web系统的吞吐率的指标是QPS(Query Per Second,每秒处理请求数),解决每秒数万次的高并发场景,这个指标非常关键.举个例子,我们假设处理一个业务请求平均响应时间为100ms,同时,系统内有20台Apache的Web服务器,配置MaxClients为500个(表示Apache的最大连接数目). 那么,我们的Web系统的理论峰值QPS为(理想化的计算方式): 20*500/0.1 = 100000 (10万QPS) 咦?我们的系统似乎很强大,1秒钟可以处理完10万的
-
MySQL高并发生成唯一订单号的方法实现
前言 这篇博文发布后,有朋友问有没有SQL server版本的,现在有了==>传送门 一.场景再现 在一个erp进销存系统或0A等其他系统中,如果多人同时进行生成订单号的操作的话,容易出现多人获得同一个订单号的情况,对公司业务造成不可挽回的损失 二.如何避免高并发情况订单号不唯一 我们可以利用存储过程和数据表搭配,建立一张表和创建存储过程,存储过程负责生成订单号,表负责处理唯一性问题 当存储过程生成一个订单编号,首先先把订单号写进表中,再把订单号结果显示出来,把生成的订单号写进表里会出现两种情况
-
PHP+MySQL高并发加锁事务处理问题解决方法
本文实例讲述了PHP+MySQL高并发加锁事务处理问题解决方法.分享给大家供大家参考,具体如下: 1.背景: 现在有这样的需求,插入数据时,判断test表有无username为'mraz'的数据,无则插入,有则提示"已插入",目的就是想只插入一条username为'mraz'的记录. 2.一般程序逻辑如下: $conn = mysqli_connect('127.0.0.1', 'root', '111111') or die(mysqli_error()); mysqli_selec
-
浅谈Nginx10m+高并发内核优化详解
何为高并发 默认的Linux内核参数考虑的是最通用场景,不符合用于支持高并发访问的Web服务器,所以需要修改Linux内核参数,这样可以让Nginx拥有更高的性能: 在优化内核时,可以做的事情很多,不过,我们通常会根据业务特点来进行调整,当Nginx作为静态web内容服务器.反向代理或者提供压缩服务器的服务器时,期内核参数的调整都是不同的,这里针对最通用的.使Nginx支持更多并发请求的TCP网络参数做简单的配置: 这些需要修改/etc/sysctl.conf来更改内核参数. 配置方法 配置详析
-
MySQL 数据库如何解决高并发问题
前言 我们都知道初创公司一开始都是以单体应用为首要架构,一般都是单体单库的形式.但是版本以及版本的迭代,数据库需要承受更多的高并发已经成了 架构设计 需要考虑的点. 那么解决问题,就得说到方案.但是方案有很多,我们该怎么选择呢? 优化与方案 基本上,我们优化要从几个关键字入手: 短距离 , 少数据 , 分散压力 . 短距离 所谓的短距离,指的是从前端到数据库的路径要短. 页面静态.有些页面的数据是在某些时段是不变的,那么这个页面可以静态化,这样可以提高访问的速度. 使用缓存.缓存大家都知道,快的
-
浅谈C++高并发场景下读多写少的优化方案
目录 概述 分析 双缓冲 工程实现上需要攻克的难点 核心代码实现 简单说说golang中双缓冲的实现 相关文献 概述 一谈到高并发的优化方案,往往能想到模块水平拆分.数据库读写分离.分库分表,加缓存.加mq等,这些都是从系统架构上解决.单模块作为系统的组成单元,其性能好坏也能很大的影响整体性能,本文从单模块下读多写少的场景出发,探讨其解决方案,以其更好的实现高并发.不同的业务场景,读和写的频率各有侧重,有两种常见的业务场景: 读多写少:典型场景如广告检索端.白名单更新维护.loadbalance
-
SQL server高并发生成唯一订单号的方法实现
前言 前几天写了一篇MySQL高并发生成唯一订单号的方法,有人私信问有没有SQL server版本的,今天中午特地写了SQL server版本的高并发生成唯一订单号实现,其实MySQL和SQL server原理都一样,主要是他们部分语法有些区别,所以你会发现我这篇文章文字说明几乎一样,只有代码和界面不一样. 一.场景再现 在一个erp进销存系统或0A等其他系统中,如果多人同时进行生成订单号的操作的话,容易出现多人获得同一个订单号的情况,对公司业务造成不可挽回的损失 二.如何避免高并发情况订单号不
-
高并发nginx服务器的linux内核优化配置讲解
由于默认的linux内核参数考虑的是最通用场景,这明显不符合用于支持高并发访问的Web服务器的定义,所以需要修改Linux内核参数,是的Nginx可以拥有更高的性能: 在优化内核时,可以做的事情很多,不过,我们通常会根据业务特点来进行调整,当Nginx作为静态web内容服务器.反向代理或者提供压缩服务器的服务器时,期内核参数的调整都是不同的,这里针对最通用的.使Nginx支持更多并发请求的TCP网络参数做简单的配置: 以下linux 系统内核优化配置均经在线业务系统测试,并发10万左右服务器运行
-
浅析Tomcat使用线程池配置高并发连接
目录 Tomcat使用线程池配置高并发连接 1:配置executor属性 2:配置Connector 一.Tomcat内存优化 1.JAVA_OPTS参数说明 二.Tomcat并发优化 1.Tomcat连接相关参数 1.参数说明 2.Tomcat中的配置示例 2.调整连接器connector的并发处理能力 1.参数说明 2.Tomcat中的配置示例 3.Tomcat缓存优化 1.参数说明 2.Tomcat中的配置示例 4.参考配置 1.旧有的配置 2.更改后的配置 Tomcat使用线程池配置高并
随机推荐
- 详解MySQL数据类型DECIMAL(N,M)中N和M分别表示的含义
- SQL Server 2008用'sa'登录失败,启用'sa'登录的解决办法
- Jquery Validate 正则表达式实用验证代码大全
- spring boot加载第三方jar包的配置文件的方法
- 详解iOS App开发中改变UIButton内部控件的基本方法
- 巧妙使用JQuery Clone 添加多行数据,并更新到数据库的实现代码
- JavaScript 垃圾回收机制分析
- php中0,null,empty,空,false,字符串关系的详细介绍
- android中DatePicker和TimePicker的使用方法详解
- ajax无刷新验证注册信息示例
- JavaScript手风琴页面制作
- Windows环境下PHP开发环境搭建 - 图文完全教程
- 分析C语言一个简单程序
- java 设计模式(DAO)的实例详解
- 【Android 基础】详解Animation 动画介绍和实现
- Android6.0 固定屏幕功能实现方法及实例
- 使用OpenCV实现检测和追踪车辆
- python的依赖管理的实现
- layui点击弹框页面 表单请求的方法
- Vue实现移动端左右滑动效果的方法