tomcat相关设置

Axis1.4 远程命令执行(CVE-2019-0227)复现 一、漏洞介绍漏洞本质是管理员对AdminService的配置错误。当enableRemoteAdmin属性设置为true时,攻击者可以构造WebService调用freemarker组件中的template.utility.Execute类,远程利用AdminService接口进行WebService发布,再次访问生成的WebService接口,传入要执行的命令,就可以进行远程命令执行漏洞的利用。二、影响版本Axis <=1.4三、环境准备方法一:https://mirrors.tuna.tsingh 阅读详情

一、 如何加大tomcat连接数


在tomcat配置文件server.xml中的<Connector />配置中,和连接数相关的参数有:
minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10
maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75
acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100
enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
connectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。
其中和最大连接数相关的参数为maxProcessors和acceptCount。如果要加大并发连接数,应同时加大这两个参数。
web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。tomcat5中的配置示例:
    <Connector port="8080"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000" 
               disableUploadTimeout="true" />
对于其他端口的侦听配置,以此类推。

 

3. tomcat中如何禁止列目录下的文件
在{tomcat_home}/conf/web.xml中,把listings参数设置成false即可,如下:

  1. <init-param>  
  2. <param-name>listings</param-name>  
  3. <param-value>false</param-value>  
  4. </init-param>  
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>

 

 

 

二、如何加大tomcat可以使用的内存

Java内存溢出详解

 

(一)常见的Java内存溢出有以下三种:

1. java.lang.OutOfMemoryError: Java heap space ----JVM Heap(堆)溢出
JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不可超过物理内存。

可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。Heap的大小是Young Generation 和Tenured Generaion 之和。

在JVM中如果98%的时间是用于GC,且可用的Heap size 不足2%的时候将抛出此异常信息。

解决方法:手动设置JVM Heap(堆)的大小。  

2. java.lang.OutOfMemoryError: PermGen space  ---- PermGen space溢出。 
PermGen space的全称是Permanent Generation space,是指内存的永久保存区域。

为什么会内存溢出,这是由于这块内存主要是被JVM存放Class和Meta信息的,Class在被Load的时候被放入PermGen space区域,它和存放Instance的Heap区域不同,sun的 GC不会在主程序运行期对PermGen space进行清理,所以如果你的APP会载入很多CLASS的话,就很可能出现PermGen space溢出。

解决方法: 手动设置MaxPermSize大小

3. java.lang.StackOverflowError   ---- 栈溢出
栈溢出了,JVM依然是采用栈式的虚拟机,这个和C和Pascal都是一样的。函数的调用过程都体现在堆栈和退栈上了。
调用构造函数的 “层”太多了,以致于把栈区溢出了。
通常来讲,一般栈区远远小于堆区的,因为函数调用过程往往不会多于上千层,而即便每个函数调用需要 1K的空间(这个大约相当于在一个C函数内声明了256个int类型的变量),那么栈区也不过是需要1MB的空间。通常栈的大小是1-2MB的。
通常递归也不要递归的层次过多,很容易溢出。

解决方法:修改程序。

 

 

(二)解决方法

 

在生产环境中tomcat内存设置不好很容易出现jvm内存溢出。

1、 linux下的tomcat:  

修改TOMCAT_HOME/bin/catalina.sh 
位置cygwin=false前。
JAVA_OPTS="-server -Xms256m -Xmx512m -XX:PermSize=64M -XX:MaxPermSize=128m" 

2、 如果tomcat 5 注册成了windows服务,以services方式启动的,则需要修改注册表中的相应键值。

修改注册表HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Tomcat Service Manager\Tomcat5\Parameters\Java,右侧的Options
原值为
-Dcatalina.home="C:\ApacheGroup\Tomcat 5.0"
-Djava.endorsed.dirs="C:\ApacheGroup\Tomcat 5.0\common\endorsed"
-Xrs
加入 -Xms256m -Xmx512m 
重起tomcat服务,设置生效


3、如果tomcat 6 注册成了windows服务,或者windows2003下用tomcat的安装版,

在/bin/tomcat6w.exe里修改就可以了 。

 

4、 如果要在myeclipse中启动tomcat,上述的修改就不起作用了,可如下设置:

Myeclipse->preferences->myeclipse->servers->tomcat->tomcat×.×->JDK面板中的

Optional Java VM arguments中添加:-Xms256m -Xmx512m -XX:PermSize=64M -XX:MaxPermSize=128m

 

(三)jvm参数说明:

-server:一定要作为第一个参数,在多个CPU时性能佳 
-Xms:java Heap初始大小。 默认是物理内存的1/64。
-Xmx:java heap最大值。建议均设为物理内存的一半。不可超过物理内存。


-XX:PermSize:设定内存的永久保存区初始大小,缺省值为64M。(我用visualvm.exe查看的)

-XX:MaxPermSize:设定内存的永久保存区最大 大小,缺省值为64M。(我用visualvm.exe查看的)


-XX:SurvivorRatio=2  :生还者池的大小,默认是2,如果垃圾回收变成了瓶颈,您可以尝试定制生成池设置


-XX:NewSize: 新生成的池的初始大小。 缺省值为2M。

-XX:MaxNewSize: 新生成的池的最大大小。   缺省值为32M。

如果 JVM 的堆大小大于 1GB,则应该使用值:-XX:newSize=640m -XX:MaxNewSize=640m -XX:SurvivorRatio=16,或者将堆的总大小的 50% 到 60% 分配给新生成的池。调大新对象区,减少Full GC次数。


+XX:AggressiveHeap 会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。 
-Xss:每个线程的Stack大小,“-Xss 15120” 这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512k. 


-verbose:gc 现实垃圾收集信息 
-Xloggc:gc.log 指定垃圾收集日志文件 
-Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一 
-XX:+UseParNewGC :缩短minor收集的时间 
-XX:+UseConcMarkSweepGC :缩短major收集的时间 此选项在Heap Size 比较大而且Major收集时间较长的情况下使用更合适。

-XX:userParNewGC 可用来设置并行收集【多CPU】
-XX:ParallelGCThreads 可用来增加并行度【多CPU】
-XX:UseParallelGC 设置后可以使用并行清除收集器【多CPU】






        
Windows下Tomcat服务的JVM设置相关 在我的博文"Tomcat自启动"中提到了Windows下Tomcat配置成服务的方法,一直以为,直接在catalina.bat中设置JVM的参数,然而,最近在做一个项目,使用了缓存机制,JVM所需的内存空间较大,导致Tomcat服务莫名的down掉,而且查看catalina.out等日志文件,没有发现out of memory之类的异常。        后来通过查看操作系统的本身的系统日志,发现 阅读详情

相关推荐

振动能量采集技术:从原理到实战,破解物联网供电难题

能量采集技术旨在捕获环境中的废弃能量(如机械振动、热能、光能)并将其转化为电能,其核心原理在于通过压电、电磁、静电或摩擦电等物理效应实现能量形式的转换。这项技术的核心价值在于为物联网(IoT)中难以布线或更换电池的分布式传感器节点、植入式医疗设备等提供近乎永续的电力解决方案,从而解决物联网部署的“最后一米供电”瓶颈。其应用场景广泛覆盖工业预测性维护、结构健康监测、可穿戴设备及消费电子等领域。本文聚焦于振动能量采集这一细分方向,深入剖析了压电式、电磁式、电容式及摩擦纳米发电机(TENG)等主流技术路线的实战考

weixin_42660494的博客 567

tomcat配置优化

tomcat配置优化可以从两个方面入手: i、tomcat启动命令行中的参数优化(或者叫做jvm优化 catalina.sh or catalina.bat); ii、tomcat容器本身优化(server.xml)。 一、JVM优化: tomcat 的启动参数位于tomcat的安装目录\bin目录下,打开参数配置文件 xxx/tomcat/bin/catalina.bat,在文件开头的一大串注释...

stoneBrother 1601

Crazyflie 2.1固件刷写与地址配置全攻略:从开箱到连接Crazyswarm

本文详细介绍了Crazyflie 2.1微型无人机的固件刷写、地址配置及与Crazyswarm系统的集成方法。从开箱检查到多机协同飞行,涵盖了硬件准备、固件刷写、无线电地址修改等关键步骤,帮助用户快速实现集群飞行控制。特别针对Crazyswarm系统集成提供了实用配置示例和调试技巧。

weixin_42530458的博客 405

Apache Axis用户指南(1)

本文是Apache Axis的用户指南的第一部分。笔者在学习的过程中,作为记录,简单的翻译了一下。笔者已经翻译了Apache Axis的安装及应用文档,也谈不上翻译,只是笔者在学习的过程中,将笔者认为重要的部分作为记录,并加以笔者实践的结果。建议在阅读本文之前先阅读Apache Axis安装指南。0.介绍SOAP:SOAP是基于XML的通信协议和编码格式,它用于交互应用程序通信。现在的

zhouqixiang的专栏 4856

OpenTCS打造移动机器人交通管制系统(四)

先分析下OpenTCS的一些策略方面的东西,这是OpenTCS的基础。 首先需要先明确下OpenTCS内核中的三个概念: 路由(Route) : 决定了车辆通过什么样的方式和算法来获得一段路径,未来车辆将沿着此路径运行。 派遣(Dispacher): 决定了一个订单应该关联哪一辆小车,即为订单分配车辆和为车辆分配订单。 调度(schedule):狭义上的调度,交通管制的核心,决定了何时分配...

白色冰激凌的技术专栏 5272

解决LangChain4j报错HTTP/1.1 header parser received no bytes

当使用调用自己部署的大模型服务时报错: 报错信息如下:

weixin_44455388的博客 2336

(CVE-2019-0227)Axis<=1.4 远程命令执行漏洞

[图片](https://img-一、漏洞介绍漏洞本质是管理员对AdminService的配置错误。当enableRemoteAdmin属性设置为true时,攻击者可以构造调用freemarker组件中的template.utility.Execute类,远程利用AdminService接口进行WebService发布,再次访问生成的WebService接口,传入要执行的命令,就可以进行远程命令执行漏洞的利用。

m0_59598029的博客 4747

关于并网继电器的继电器自检逻辑及实现方式

对于常规的光伏并网逆变器来说,继电器控制至关重要。继电器一般位于逆变电感后,共模电感前,用于将逆变电压与电网电压脱开,一般国外有双继电器的安规强制认证要求,国内目前只需要单继电器要求(后续应该会有双继电器要求,个人感觉)

weixin_29982209的博客 2614

tomcat配置及优化(转)

常用配置详解 1 目录结构 /bin:脚本文件目录。 /common/lib:存放所有web项目都可以访问的公共jar包(使用Common类加载器加载)。 /conf:存放配置文件,最重要的是server.xml。 /logs:存放日志文件。 /server/webapps:来管理Tomcat-web服务用的。仅对TOMCAT可见,对所有的WEB APP都不可见(使用Catalina类加载器加载)。 /shared/lib:仅对所有WEB APP可见,对TOMCAT不可见(使用Shared类加载器加载)。

u010468993的博客 564

ESP32驱动MLX90640红外热成像传感器:从报错到成功运行的完整避坑指南

本文是一份详细的ESP32驱动MLX90640红外热成像传感器的实战指南。针对开发中常见的I2C通信失败、数据全零及‘坏点过多’等报错,文章提供了从环境搭建、驱动库选择与改造到实战代码解析的完整解决方案,并分享了数据滤波、热图生成及多任务优化等高级技巧,帮助开发者高效避坑,实现稳定运行。

weixin_29191669的博客 94

FPGA和USB3.0通信-USB3.0 PHY介绍

可以和FPGA搭配使用的USB3.0 PHY芯片通过之前的介绍<FPGA和USB3.0通信-USB3.0协议介绍USB3.0 PHY简介首先我们需要了解PHY具体完成哪些工作以及我利...

OpenFPGA的博客 4940

idea tomcat 乱码问题的解决及相关设置

idea tomcat 乱码问题的解决及相关设置

p15097962069的博客 91

ABB机器人刷功能选项全一篇就够——不怕丢失程序和IO配置数据

ABB机器人刷功能选项

m0_66701835的博客 1259

【Tomcat】日志相关设置

Tomcat的日志文件设置涉及到多个方面,包括日志文件的存放位置、日志类型、日志级别以及日志的滚动和分割等。以下是一个清晰的Tomcat日志文件设置指南,参考了上述文章中的信息

姜太小白的博客 2014

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

idea tomcat 乱码问题的解决及相关设置(转)

https://www.cnblogs.com/shej123/p/10312806.html

cy4ttty的专栏 462

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

设置tomcat自动启动的相关脚本

1 /etc/rc.d/init.d/tomcat2 /etc/init.d/functions3 /etc/default/tomcat#chkconfig --add tomcat#chkconfig --level 235 tomcat on 转载于:https://blog.51cto.com/7305102/1241834

weixin_33758863的博客 90

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Tomcat相关设置记录

1、设置网站为默认网站       一般我们在浏览器中输入"http://localhost:8080"显示的结果是Tomcat的网页,现在需要这个网址指向我们的网站,设置如下               找到tomcat安装目录下的conf目录下的server.xml,找到节点Host,在Host节点之间加入如下配置      备注:默认打开当然是你项目的index.jsp或者in

jeff's blog 1253

eclipse配置tomcat相关设置备忘

设置项目发布路径,比如项目访问地址不要项目名 web项目–右键–properties 找到Web Project Settings 将Context root中的内容换成 / 这样发布项目的时候访问不需要再加上项目名 eclipse中不用输入项目名称就可以直接访问项目 设置运行环境jdk版本,web项目–右键–run as–run configurations web项目–右键–pr

一个程序员的博客 385

IDEA链接Tomcat设置及相关配置

简介 首先,无论是创建java工程还是动态web工程,都可以配置tomcat。网上有很多创建工程以及如何导入tomcat的方法,这里就不做介绍。这里主要介绍导入tomcat后,有一些配置没有需要自行配置的地方 1、Artifacts的配置 1.File ->Project Structure 2.选择Artifacts选项 在跳出的选项中,直接确认就好。之后Web Application:Archive,点击OK; 打开你的Tomcat配置,配置刚刚设置的以exploded结尾的那个。 底部的A

累迹的博客 1267

intellij IDEA中Tomcat乱码问题的解决及相关设置

问题:idea中Tomcat输出出现乱码 于是尝试了一系列办法,希望这些办法对您有帮助。 先看一下乱码的样式。 设置办法 1、在tomcat Server中设置 VM options , 值为 -Dfile.encoding=UTF-8 ,可惜没生效 2、在setting中的 File encodings 中设置编码格式,后来发现这是设置页面编码格式的,所以也没生效,不过遇到相关问题的朋友也不防照此设置下。 3、在java Complier中设置Additional command line param

qq_32755875的博客 766

ComfyUI全自动换装工作流:从零搭建到参数调优实战

生成式AI技术正在重塑电商图像生产链路,其中可控图像生成与局部重绘成为关键能力。通过将服装特征提取、人体姿态锁定与蒙版区域重绘相结合,可在不改变模特姿态和背景的前提下,实现服装的精准替换。这种自动化工作流显著降低实拍成本,提升多款式、多配色场景下的出图效率,广泛应用于虚拟试衣、电商详情页制作等场景。本文基于ComfyUI展开,系统讲解全自动换装工作流的原理、节点搭建、参数调优与常见问题排查,涵盖IPAdapter特征注入、ControlNet姿态控制、SAM分割等核心环节,帮助读者从零构建稳定可复用的换装流

weixin_34332905的博客 1428

Tomcat相关下载及其乱码问题设置

Tomcat下载安装及其配置 1:tomcat的下载地址:https://tomcat.apache.org/ 如何设置tomcat中的setting.xml配置 我们知道,安装完tomcat后可以使用的,但是我们还需要改动一些小小的部分来提升我们的用户体验,而3这些则需要改变一些相应的配置。 ...

Zhijie Wei的博客 330
上一篇: PowerDesigner使用教程
beyondchx
博客等级 码龄19年 238粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值