tomcat的优化

TOMCAT的优化

tomcat的优化主要是从三个方面进行的,第一个是 tomcat配置的优化第二是对JVM虚拟机的优化第三是对Linux系统内核的优化,配置文件中的优化主要在tomcat中server.xml文件夹内

tomcat配置文件的优化

1、 maxThreads:
Tomcat 使用线程来处理接收的每个请求,这个值表示 Tomcat 可创建的最大的线程数,默认值是 200。
修改tomcat/conf/server.xml的配置文件,并修改 在模块中进行修改,如图
在这里插入图片描述

<Connector port="8081" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443"maxThreads="300"    />

把TomCat的最大并发量改成300

2、minSpareThreads:
最小空闲线程数,Tomcat 启动时的初始化线程数,表示即使没有人使用也开这么多空线程等待,默认值是 10
下面是在第一题基础上把最小空闲线程数改成20
在这里插入图片描述
在Connector设置块中加入

minSpareThreads="20"

3、connnectionTimeout;
网络连接超时,单位:毫秒,设置为 0 表示永不超时,这样设置有隐患的。通常默认 20000 毫秒就可以。
可以在Connector模块里加入
在这里插入图片描述

connnectionTimeout="30000"

就可以设置完成长连接持续时间30秒

4、maxKeepAliveRequests
最大连接请求数
它用于指定允许的最大持久连接(Keep-Alive)请求数。持久连接允许客户端在单个TCP连接上发送多个HTTP请求,以减少连接的开销,提高性能。通俗的来说,就是一次长连接允许发送的HTTP请求数,通常默认是-1也就是不限制
在Connector模块里加入

maxKeepAliveRequests="100"

在这里插入图片描述
5、acceptCount
它用于指定在Tomcat已经满负荷工作时,接受新连接的请求数量。当所有的处理线程都在工作时,新的连接请求会被放置在一个队列中等待处理。默认值:acceptCount的默认值通常是100。这意味着当Tomcat的处理线程已满时,最多会接受100个新的连接请求,其余请求会被拒绝。

acceptCount="200"

将最大等待链接数设置成200
在这里插入图片描述
6、enableLookups
用于指定是否进行DNS反查(反向DNS查找)以返回客户端主机的主机名。将其设置为 true 表示Tomcat会尝试通过客户端IP地址查找对应的主机名,而将其设置为 false 则表示Tomcat不进行反查,直接返回IP地址,以提高性能。默认值:通常情况下,enableLookups 的默认值为 true,这意味着Tomcat会尝试进行DNS反查以获取客户端主机的主机名。从性能方面考虑建议关闭
在Connector模块里加入可以关闭DNS反查

enableLookups="false"

在这里插入图片描述

JVM虚拟机的优化

catalina.sh 中设置

JAVA_OPTS="$JAVA_OPTS -server -Xms2048m -Xmx2048m -XX:PermSize=1024m -XX:MaxPermSize=1024m -Xmn768m"
  1. -server:这个选项启用了JVM的Server模式,它是一种优化模式,适用于多核服务器,可以提供更好的性能。Server模式主要优化了编译和运行时的性能,适合长时间运行的应用程序。通常情况下,使用 -server 是一个好的做法,特别是在生产环境中。

  2. -Xms2048m -Xmx2048m:这两个选项用于设置JVM的堆内存大小。-Xms 设置堆的初始大小,-Xmx 设置堆的最大大小。在你的配置中,堆内存被设置为2GB,这意味着JVM会启动时分配2GB的初始堆空间,并且允许堆的最大大小达到2GB。这个设置可以根据你的应用程序和服务器的性能需求进行调整,通常设置为物理内存的一部分,以避免频繁的垃圾回收。

  3. -XX:PermSize=1024m -XX:MaxPermSize=1024m:这两个选项用于设置JVM的永久代(PermGen)大小。永久代主要用于存储类的元数据信息,例如类的结构、方法、字段等。在Java 8及更高版本中,永久代被元数据区(Metaspace)取代,因此这些选项在Java 8及以后的版本中不再有效。在你的配置中,永久代被设置为1GB,这通常足够存储大多数应用程序的类元数据。类元数据的大小取决于应用程序的复杂性和使用的库。

  4. -Xmn:这个选项用于设置JVM堆内存中的新生代大小。新生代是堆内存的一部分,用于存储新创建的对象。在你的配置中,新生代被设置为768MB,这是堆内存大小的3/8。通常情况下,新生代的大小应根据应用程序的内存分配模式和性能需求进行调整。较大的新生代可以容纳更多的新对象,但也会导致更频繁的垃圾回收。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/130377.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java笔记:线程池

一. 正确使用ThreadPoolExecutor创建线程池 1.1、基础知识 Executors创建线程池便捷方法列表&#xff1a;下面三个是使用ThreadPoolExecutor的构造方法创建的 方法名功能newFixedThreadPool(int nThreads)创建固定大小的线程池newSingleThreadExecutor()创建只有一个线程的线…

HTML5Plus

之前写过在 vue 中使用 mui 框架的方法&#xff0c;因为用 vue 开发后打包 5App 会有一些问题&#xff0c;所以当时用到了&#xff0c;最近又一次开发移动端&#xff0c;不同的是这次使用的是 vue3 开发的&#xff0c;导致之前使用的 vue-awesome-mui 依赖不能使用了&#xff0…

java 工程管理系统源码+项目说明+功能描述+前后端分离 + 二次开发

Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下&#xff1a; 首页 工作台&#xff1a;待办工作、消息通知、预警信息&#xff0c;点击可进入相应的列表 项目进度图表&#xff1a;选择&#xff08;总体或单个&#xff09;项目显示…

华为OD机考算法题:分奖金

题目部分 题目分奖金难度难题目说明公司老板做了一笔大生意&#xff0c;想要给每位员工分配一些奖金&#xff0c;想通过游戏的方式来决定每个人分多少钱。按照员工的工号顺序&#xff0c;每个人随机抽取一个数字。按照工号的顺序往后排列&#xff0c;遇到第一个数字比自己数字…

YOLOv5:对yolov5n模型进一步剪枝压缩

YOLOv5&#xff1a;对yolov5n模型进一步剪枝压缩 前言前提条件相关介绍具体步骤修改yolov5n.yaml配置文件单通道数据&#xff08;黑白图片&#xff09;修改models/yolo.py文件修改train.py文件 剪枝后模型大小 参考 前言 由于本人水平有限&#xff0c;难免出现错漏&#xff0c;…

chrome_elf.dll丢失怎么办?修复chrome_elf.dll文件的方法

Chrome是目前最受欢迎的网络浏览器之一&#xff0c;然而有时用户可能会遇到Chrome_elf.dll丢失的问题。该DLL文件是Chrome浏览器的一个重要组成部分&#xff0c;负责启动和管理程序的各种功能。当Chrome_elf.dll丢失时&#xff0c;用户可能无法正常启动Chrome或执行某些功能。本…

springboot jpa手动事务

创建springboot项目 搭建最简单的SpringBoot项目_Steven-Russell的博客-CSDN博客 引入jpa和数据据依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId> </dependency>…

手搓消息队列【RabbitMQ版】

什么是消息队列&#xff1f; 阻塞队列&#xff08;Blocking Queue&#xff09;-> 生产者消费者模型 &#xff08;是在一个进程内&#xff09;所谓的消息队列&#xff0c;就是把阻塞队列这样的数据结构&#xff0c;单独提取成了一个程序&#xff0c;进行独立部署~ --------&…

yolov8 模型部署--TensorRT部署-c++服务化部署

写目录 yolov8 模型部署--TensorRT部署1、模型导出为onnx格式2、模型onnx格式转engine 部署 yolov8 模型部署–TensorRT部署 1、模型导出为onnx格式 如果要用TensorRT部署YOLOv8&#xff0c;需要先使用下面的命令将模型导出为onnx格式&#xff1a; yolo export modelyolov8n.p…

【算法】常见位运算总结

目录 1.基础位运算2. 给一个数n&#xff0c;确定它的二进制表示中的第x位是0还是13.将一个数n的二进制表示的第x位修改成14.将一个数n的二进制表示的第x位修改成0、5. 位图的思想6.提取一个数(n)二进制表示中最右侧的17.干掉一个数(n)二进制表示中最右侧的18.位运算的优先级9.异…

华为OD七日集训第4期 - 按算法分类,由易到难,循序渐进,玩转OD

目录 一、适合人群二、本期训练时间三、如何参加四、7日集训第4期五、精心挑选21道高频100分经典题目&#xff0c;作为入门。第1天、数据结构第2天、滑动窗口第3天、贪心算法第4天、二分查找第5天、分治递归第6天、深度优先搜索dfs算法第7天、宽度优选算法&#xff0c;回溯法 六…

SpringBoot2.0(过滤器,监听器,拦截器)

目录 一&#xff0c;过滤器1.1&#xff0c;自定义Filter1.2&#xff0c;启动类代码1.2&#xff0c;创建filter类和LoginFilter包1.2.1&#xff0c;编写loginFilter类 过滤器代码1.2.2&#xff0c;创建二个Controller类 二&#xff0c;监听器2.1&#xff0c;自定义监听器2.2&…

Linux 操作系统云服务器安装部署 Tomcat 服务器详细教程

Tomcat 基本概述 Tomcat 服务器是Apache软件基金会&#xff08;Apache Software Foundation&#xff09;的 Jakarta 项目中的一个核心项目&#xff0c;由 Apache、Sun 和其他一些公司及个人共同开发而成。它是一个免费的开放源代码的 Web 应用服务器&#xff0c;属于轻量级应用…

DNS (Domain Name System) 域名解析过程

一、域名与IP地址 通常情况下一台电脑都会有一个IPv4和IPv6地址&#xff08;由数字和字母组成&#xff0c;难以记忆&#xff09;&#xff0c;所以日常访问网站时我们通常都是采用输入域名&#xff08;方便记忆&#xff09;的方式来访问。 二、域名结构树 www 主机名bilibil…

宋浩高等数学笔记(十二)无穷级数

完结&#xff0c;宋浩笔记系列的最后一更~ 之后会出一些武忠祥老师的错题&笔记总结&#xff0c;10月份就要赶紧做真题了

End-to-End Object Detection with Transformers(论文解析)

End-to-End Object Detection with Transformers 摘要介绍相关工作2.1 集合预测2.2 transformer和并行解码2.3 目标检测 3 DETR模型3.1 目标检测集设置预测损失3.2 DETR架构 摘要 我们提出了一种将目标检测视为直接集合预测问题的新方法。我们的方法简化了检测流程&#xff0c…

C# OpenVino Yolov8 Seg 分割

效果 项目 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using OpenCvSharp;namespace OpenVino_Yolov8_Demo {public…

WorkPlus AI助理,基于ChatGPT的企业级知识问答机器人

随着人工智能技术的发展&#xff0c;WorkPlus AI助理以ChatGPT对话能力为基础&#xff0c;将企业数据与人工智能相结合&#xff0c;推出了面向企业的知识问答机器人。这一创新性的解决方案帮助企业高效管理和利用自身的知识资产&#xff0c;助力企业级人工智能的构建。与传统的…

腾讯云和阿里云2核2G服务器租用价格表对比

2核2G云服务器可以选择阿里云服务器或腾讯云服务器&#xff0c;腾讯云轻量2核2G3M带宽服务器95元一年&#xff0c;阿里云轻量2核2G3M带宽优惠价108元一年&#xff0c;不只是轻量应用服务器&#xff0c;阿里云还可以选择ECS云服务器u1&#xff0c;腾讯云也可以选择CVM标准型S5云…

如何在 Ubuntu 上安装和使用 Nginx?

ginx&#xff08;发音为“engine-x”&#xff09;是一种流行的 Web 服务器软件&#xff0c;以其高性能和可靠性而闻名。它是许多流行网站使用的开源软件&#xff0c;包括 Netflix、GitHub 和 WordPress。Nginx 可以用作 Web 服务器、负载均衡器、反向代理和 HTTP 缓存等。 它以…