`

Tomcat 的一些笔记

 
阅读更多

设置Xms, Xmx for tomcat的大小:

一般来说, heap size的大小制定为物理内存的80%左右.

 

虚拟机的堆大小决定了虚拟机花费在收集垃圾上的时间和频度。收集垃圾可以接受的速度与应用有关,应该通过 分析实际的垃圾收集的时间和频率来调整。如果堆的大小很大,那么完全垃圾收集就会很慢,但是频度会降低。如果你把堆的大小和内存的需要一致,完全收集就很 快,但是会更加频繁。调整堆大小的的目的是最小化垃圾收集的时间,以在特定的时间内最大化处理客户的请求。在基准测试的时候,为保证最好的性能,要把堆的 大小设大,保证垃圾收集不在整个基准测试的过程中出现。

如果系统花费很多的时间收集垃圾,请减小堆大小。一次完全的垃圾收集应该不 超过3-5秒。如果垃圾收集成为瓶颈,那么需要指定代的大小,检查垃圾收集的详细输出,研究垃圾收集参数对性能的影响。一般说来,你应该使用物理内 存的80%作为堆大小。当增加处理器时,记得增加内存,因为分配可以并行进行,而垃圾收集不是并行的.

 

设置Xms, Xmx for tomcat的方法:

 

After looking around a bit, here is how I learned to configure heap size for Tomcat 6.x:

export CATALINA_OPTS="-Xms1024m -Xmx1024m"

 

CATALINA_OPTS or JAVA_OPTS?

CATALINA_OPTS is used to control Tomcat environment options, whereas JAVA_OPTS controls the environment options at a higher level ie. for any Java library.

You can start Tomcat with more heap memory using the following:


Tomcat与其它web服务器整合使用

虽然tomcat也可以作web服务器,但其处理静态html的速度比不上apache,且其作为web服务器的功能远不如apache,因此我们想把 apache和tomcat集成起来,将html与jsp的功能部分进行明确分工,让tomcat只处理jsp部分,其它的由apache,IIS等这 些web服务器处理,由此大大节省了tomcat有限的工作“线程”。

 

  • maxThreads="150" 表示最多同时处理150个连接
  • minSpareThreads="25" 表示即使没有人使用也开这么多空线程等待
  • maxSpareThreads="75" 表示如果最多可以空75个线程,例如某时刻有80人访问,之后没有人访问了,则tomcat不会保留80个空线程,而是关闭5个空的。
  • acceptCount="100" 当同时连接的人数达到maxThreads时,还可以接收排队的连接,超过这个连接的则直接返回拒绝连接。

根据配置建议

  • maxThreads="500"
  • minSpareThreads="100" 如果你的网站经常访问量都很大的话,缺省就开比较大
  • maxSpareThreads="300"
  • acceptCount="100"

这只是说你的服务器可以支持这么多用户,但还要看你安装了哪些东西,还有你的程序是否足够高效率。

tomcat中的几点配置说明

 

如何加大 tomcat连接数


在tomcat配置文件server.xml中的配置中,和连接数相关的参数有:

 

以下参数在Tomcat6里default value貌似改了, Please check Catalina Functional Specification

 

minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10
maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75
acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100
enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
connectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。

 

其中和最大连接数相关的参数为maxProcessors和acceptCount。如果要加大并发连接数,应同时加大这两个参数。


web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。Unix中如何设置这些参数,请参阅Unix常用监控和管理命令

 

分享到:
评论

相关推荐

    tomcat学习笔记

    【标题】:Tomcat学习笔记 【正文】: Tomcat是一款广泛应用的开源Web服务器和Java Servlet容器,由Apache软件基金会的Jakarta项目开发。它实现了Java Servlet和JavaServer Pages(JSP)规范,并且作为轻量级应用...

    Tomcat学习笔记

    《Tomcat学习笔记》 Tomcat是一款开源的Java Servlet容器,是Apache软件基金会下的Jakarta项目中的核心项目,主要用于运行Java Web应用程序。本笔记将详细阐述Tomcat的安装、配置、虚拟主机设置、JDBC数据库连接池...

    tomcat实战笔记

    Tomcat实战笔记详细介绍了Apache Tomcat服务器,这是一个由Apache软件基金会管理的Jakarta项目核心产品。Tomcat作为一个开源Web应用服务器,常用于中小型系统中,特别是在并发访问用户数量不是很多的情况下,它是一...

    tomcat学习精华笔记

    【Tomcat 学习精华笔记】 Tomcat 是一个广泛应用的开源服务器,主要用于托管Java Web应用程序。它虽然不是严格意义上的应用服务器,但作为一个Servlet容器,它能够处理Servlet和JSP,并且具备了一些应用服务器的...

    Tomcat部署笔记

    对于初学者或者经验不足的开发者来说,正确地在本地环境中部署并运行Tomcat可能会遇到一些常见的问题。本文将以“Tomcat部署笔记”为引子,深入探讨在Windows环境下使用Eclipse IDE进行Tomcat部署的具体步骤及常见...

    tomcat笔记

    【标题】:Tomcat笔记 【内容】 Tomcat是一款由Apache软件基金会开发的开源Web服务器和Servlet容器,它是Java EE(现在称为Jakarta EE)的一部分,特别针对Java应用程序的部署和运行。Tomcat以其轻量级、高效和...

    tomcat&http笔记.pdf

    Browser/Server 浏览器/服务器 访问服务器资源不需要专门安装客户端软件,而是直接通过浏览器访问服务器资源. 例如: 天猫、京东、知乎网站 开发者通过web服务器可以把...进入Tomcat安装目录/conf/server.xml 文件修改

    tomcat学习笔记.rar

    【标题】:Tomcat学习笔记 【描述】:Tomcat是一款广泛应用的开源Java Servlet容器,由Apache软件基金会下属的Tomcat项目开发维护。它主要用于部署和运行Java Web应用程序,包括Servlet和JSP。Tomcat以其轻量级、...

    tomcat7.0学习笔记

    【Tomcat7.0学习笔记】 Tomcat 7.0是Apache软件基金会的Jakarta项目下的一个开源Java Servlet容器,它实现了Java Servlet和JavaServer Pages(JSP)规范,为Web应用程序提供服务。本笔记主要涵盖了在Linux环境下...

    Linux下安装Tomcat8.0.45笔记

    ### Linux下安装Tomcat8.0.45知识点详述 #### 一、前期准备与环境搭建 **1.1 下载与传输** - **下载JDK与Tomcat**: 在开始之前,首先需要确保已经从官方网站下载了所需版本的JDK(本例中为1.8.0_151)以及Tomcat...

    tomcat源码研读笔记中的tomcat源码

    《Tomcat源码研读笔记》是对Apache Tomcat服务器内部工作原理的深度探索。Tomcat作为一款广泛应用的开源Java Servlet容器,它的源码是理解Java Web应用运行机制的关键。本笔记将围绕Tomcat的核心组件、架构设计以及...

    HTML笔记. J2EE笔记. Javascript笔记. JAVA笔记.oracle 笔记.Linux笔记.tomcat笔记.面试问题.数据结构.听韩顺平的笔记.正则表达式.

    HTML笔记. J2EE笔记. Javascript笔记. JAVA笔记.oracle 笔记.Linux笔记.tomcat笔记.面试问题.数据结构.听韩顺平的笔记.正则表达式.等,我是我在上大学时学习做的笔记,拿出来和大家共享。。

    完整图解 Tomcat 5.0.28 安装笔记

    ### Tomcat 5.0.28 安装与配置详解 #### 一、准备工作:J2SDK与TOMCAT的准备 在正式开始安装Tomcat 5.0.28之前,首先需要确保系统中已安装Java 2 Standard Edition(J2SDK),因为Tomcat服务器是基于Java平台构建...

    Tomcat 源代码调试笔记 - 看不见的 Shell1

    【Tomcat 源代码调试笔记 - 看不见的 Shell】这篇笔记主要探讨了如何在Tomcat运行时动态插入过滤器,以及遇到的问题和解决方法。Tomcat作为一个流行的Java应用服务器,它允许开发者通过Servlet规范中的`...

    Tomcat学习笔记,图片比较多,懒得写博客,先上传

    Tomcat学习笔记,图片比较多,懒得写博客,先上传

    JSP、Tomcat配置 笔记

    ### JSP与Tomcat配置详解 #### 一、Tomcat服务器配置 **1. 配置端口号** - **目的**: 更改Tomcat默认监听的HTTP端口8080,以便在本地环境中与其他服务更好地共存。 - **步骤**: - 打开`%TOMCAT_HOME%/conf/...

    Tomcat性能优化笔记

    【Tomcat性能优化笔记】 Tomcat作为一款广泛应用的开源Java Servlet容器,其性能优化对于提升Web应用的整体效能至关重要。优化工作主要分为两大部分:外部环境调整和Tomcat自身的配置优化。 1. **外部环境优化** ...

    tomcat6学习笔记【原创】

    ### Tomcat 6 学习笔记 #### 一、Tomcat 6 平台搭建与配置 ##### 1. 下载与安装 Tomcat 6 是一个免费且开源的Servlet容器,由Apache软件基金会下的Jakarta项目开发。可以通过官方网站进行下载:...

Global site tag (gtag.js) - Google Analytics