Tomcat 使用apr优化】的更多相关文章

最近业务服务器出现了一些问题,Nginx傲娇了,准备把加Nginx插件上的一些处理逻辑扔到后端的Tomcat的业务处理里面去,考虑到tomcat目前本来就压力山大,所以弄了弄apr库来优化tomcat的并发能力.(虽然不是很懂具体原理,不过并发能力确实得到了提高~\(≧▽≦)/~)      tomcat默认采用的BIO模型,在几百并发下性能会有很严重的下降.tomcat自带还有NIO的模型,另外也可以调用APR的库来实现操作系统级别控制. NIO模型是内置的,调用很方便,只需要将上面配置文件中…
APR是apache的一个linux操作系统级优化库,可以在tomcat中使用操作系统级native调用大大提高并发处理效率 先安装前置依赖: yum install -y apr-devel openssl-devel gcc make expat-devel https://mirrors.tuna.tsinghua.edu.cn/apache/apr/ 下载最新apr-1.6.3.tar.gz  apr-util-1.6.1.tar.gz apr-iconv.x.x.tar.gz 解压ap…
原文链接:http://blog.csdn.net/xyang81/article/details/51530979 一.JVM内存配置优化 在开发当中,当一个项目比较大时,依赖的jar包通常比较多,我们都知道,在应用服务器启动时,会将应用引用到的所有类通过ClassLoader依次全部加载到内存当中.Java的逻辑内存模型大致分为堆内存.栈内存.静态内存区,也称持久区,该区的内存不会被GC回收.堆内存用于存储类的实例.数组等引用类型数据,也就是用new生成的对象,都存放在这里,栈内存存储局部变…
一.JVM优化 1.内存优化. 2.垃圾回收策略优化. 二.server.xml的connector优化(connector是与HTTP请求处理相关的容器,三个容器的初始化顺序为:Server->Service->Connector) (1)指定使用NIO模型来接受HTTP请求 (2)http connector的优化,指定处理线程数目 (3)线程池 (4)其他常规设置 三.设置session过期时间 四.apr插件提高tomcat性能 五.集群 六.问题定位 一.JVM优化 linux修改T…
Tomcat配置优化,主要在于优化tomcat运行模式,并发参数和线程数, 以及jvm堆内存和垃圾回收相关参数的优化.下面将逐一介绍. 1. tomcat的3种运行模式 1.1 BIO - 同步阻塞IO模式 BIO: 同步阻塞IO, 性能低, 没有经过任何优化处理和支持.服务器实现模式为一个连接一个线程. 即, 客户端有连接请求时, 服务器端就需要启动一个线程进行处理. 如果这个连接不做任何事情会造成不必要的线程开销, 当然可以通过 线程池 机制改善.适用场景: BIO方式适用于连接数比较小且固…
在慢速网络上Tomcat线程数开到300以上的水平,不配APR,基本上300个线程狠快就会用满,以后的请求就只好等待.但是配上APR之后,Tomcat将以JNI的形式调用Apache HTTP服务器的核心动态链接库来处理文件读取或网络传输操作,这时并发的线程数量明显下降,从原来的300可能会马上下降到只有几十,新的请求会毫无阻塞的进来. Tomcat 可以使用 apr 来提供更好的伸缩性.性能和集成到本地服务器技术,用来提高 tomcat 的性能.而tomcat native在具体的运行平台上提…
原文地址: http://zhaosheng.wolf.blog.163.com/blog/static/115304589201212845341723/ APR(Apache Portable Runtime)是一个高可移植库,它是Apache HTTP Server 2.x的核心.APR有很多用途,包括访问高级IO功能(例如sendfile,epoll和OpenSSL),OS级别功能(随机数生成,系统状态等 等),本地进程管理(共享内存,NT管道和UNIX sockets).这些功能可以使…
Tomcat 内存与优化一.Tomcat 运行环境介绍 1.Tomcat 本身无法直接在计算机上运行,需要依赖硬件基础上的操作系统和Java虚拟机: 2.Java 程序启动时JVM都会分配一个初始内存和最大内存给这个应用: 3.当应用程序用到最大内存的时刻,就会触发JVM做垃圾回收(GC)动作,释放被占用的内存: 4.因此想要调整Java程序启动时的初始内存和最大内存,需要向JVM申请: 5.如果初始内存大小设置过小,且此时初始化的应用对象过多,虚拟机就必须重复的加载内存来满足使用: 6.基于以…
PHP性能优化 一般我们是在/usr/local/php5/etc/php-fpm.conf这个文件里面进行相应的配置. 1)       如果设置成static,php-fpm进程数自始至终都是pm.max_children指定的数量,不再增加或减少. 2)       如果设置成dynamic,则php-fpm进程数是动态的,最开始是pm.start_servers指定的数量,如果请求较多,则会自动增加,保证空闲的进程数不小于pm.min_spare_servers,如果进程数较多,也会进行…
今天来总结一下tomcat的一些优化的方案,由于本人才疏学浅,写的不好,勿喷! tomcat对于大多数从事开发工作的童鞋应该不会很陌生,通常做为默认的开发环境来为大家服务,不过tomcat默认的一些配置对于生产环境来说是相当不够滴,特别对于内存以及线程的配置方面都很有可能成为日后性能的瓶颈. 接下来咱们就聊聊tomcat的优化,从内存以及线程两个方面来谈: 1.内存方面 tomcat的内存优化操作起来就比较简单了 如果是linux环境的话设置如下: 修改TOMCAT_HOME/bin/catal…