处事集成平台机能测试与优化(应用与情况)
当前位置:以往代写 > JAVA 教程 >处事集成平台机能测试与优化(应用与情况)
2019-06-14

处事集成平台机能测试与优化(应用与情况)

处事集成平台机能测试与优化(应用与情况)

副标题#e#

方针:

按照四方面的设置调解,调查SIP5.5在高并发下的机能环境。

由于SIP吸收的请求都是处事型处理惩罚请求,因此认为Apache+Jboss只会带来多 余的转发损耗,所以正好这次也作一个验证,看看Apache+JBoss是否不适合于这 种纯动态处事请求的环境。 

四方面情况较量:

1.JBoss APR模式与Http1.1模式机能差别。(确切来说应该是JBoss内置 Tomcat回收APR的环境)。

2.是否回收Apache+JBoss和Apache差异的转发模块带来的机能差别。

3.Memcached Client版本优化后对机能影响。

4.ISP有差异延时对付SIP的机能影响。

前置条件:

SIP版本5.5,并发用户600,ISP默认耗时20ms,Apache设置和JBoss WebContainer设置,一些优化设置拜见附加信息。

最终功效:

SIP回收Apache(Mod_jk)+JBoss(APR)+Cache2.4.2,详细设置拜见附加信息。

测试功效表格:

具体的测试陈诉可以参看:http://spreadsheets.google.com/pub? key=pcsQ9Wm01cIEjjQcistPNDg

JBoss设置差别测试较量:

Apache(2.0.52)设置 JBoss(4.2.1)设置 Cache Client Version TPS TPS区间
APR 2.4.2 1705 1600-1900
HTTP1.1 2.4.2 1615 1550-1700
Mod_jk(1.2.27) HTTP1.1 2.4.2 2090 1800-2800
Mod_jk(1.2.27) APR 2.4.2 3223 3200-3400

增补:

设置成为Http1.1模式的两种环境下,测试功效TPS颠簸频率很高,在Mod_jk 模式下颠簸幅度也很大。

1.可以证实在非APR模式和高并发的环境下Web容器处理惩罚请求本领不不变,同 时也直接影响到了SIP的机能。

2.在测试中发明不回收APR模式的环境下,Web容器会耗损大量的socket毗连 通道。

Apache模块差别测试较量:

Apache(2.0.52)设置 JBoss(4.2.1)设置 Cache Client Version TPS TPS区间
APR 2.4.2 1705 1600-1900
Mod_jk(1.2.27) APR 2.4.2 3223 3200-3400
Weblogic.so APR 2.4.2 1033 350-1400


#p#副标题#e#

增补:

Weblogic.so模块是以前系统遗留的http请求转发模块。在测试进程中 Weblogic模块的测试中颠簸频率和幅度都很大。按照测试功效可以看出:

1.在APR模式下,Apache+JBoss对付SIP这种无静态资源会见,纯API性质的服 务来说依旧会有较量好的优化结果,出格是在接管请求环节。(岂论是TPS照旧 TPS颠簸区间和频率都有很好的表示)

2.Weblogic.so这个模块机能绝对不可,不变性极差。

Cache客户端版本差别测试较量:

Apache(2.0.52)设置 JBoss(4.2.1)设置 Cache Client Version TPS TPS区间
APR 2.4.2 1705 1600-1900
APR 2.4 1615 1550-1700
Mod_jk(1.2.27) APR 2.4.2 3223 3200-3400
Mod_jk(1.2.27) APR 2.4 2485 2650-2800

增补:

2.4.2和2.4版本在单独测试的情况下:500并发用户,每个并发用户1000次 get和set,机能相差40%阁下。

上面测试功效可以看出:

#p#分页标题#e#

1.在无apache时,机能有所晋升,但不明明,而在有apache时,机能大幅提 升,证明在无apache的环境下,memcache客户端已经不是机能瓶颈,因此替换版 本结果不大,在http请求处理惩罚机能大幅晋升的环境下,memcache客户端机能优化 的优势就获得了浮现。

2.在测试中也发明Apache + JBoss颠簸频率和区间都小于其他几个测试环境 ,图形十分平稳,证明处理惩罚请求不是系统瓶颈。

ISP响应时间差别测试较量:

Apache(2.0.52)设置 JBoss(4.2.1)设置 Cache Client Version ISP响应时间(ms) TPS TPS区间
Mod_jk(1.2.27) APR 2.4.2 20 3223 3200-3400
Mod_jk(1.2.27) APR 2.4.2 110    
Mod_jk(1.2.27) APR 2.4.2 900    

#p#副标题#e#

测试优化总结:

1.不要认为内存利用无关机能。此刻很对开拓者认为内存申请分派是由gvm 来打点,可是内存是否公道利用很大概会影响互联网应用的高并发下机能。GC带 来的系统短暂停滞会在高并发下影响机能。

2.利用java的要领需要有足够的“来由”和“度”。 Java在1.5今后对concurrent方面做了很不错的支持,可是这些并发处理惩罚究竟会 耗损资源,因此在可以或许制止频繁利用的环境下只管优化流程。在一些简朴的场景 下,是否有须要利用一些较量耗时的要领,譬喻split,用起来很利便,可是在 设计底层通信操纵的时候照旧争分夺秒(JProfiler看看耗损的时间占用的比例 以及挪用的次数),用一些本身简朴的方法替换。

3.目睹未必为实,测试才得真知。在SIP5.5中思量毗连后端ISP方法由 HttpURLConnection替换成为HttpClient,感受HttpClient的开拓模式越发容易 认为是共享传输通道(Get,Post都单独作为包来交由HttpClient单个实例),虽 然看到HttpURLConnection说明中提到会共享通道。功效一压,HttpClient基础 上不去,原因是构建这些Get,Post自己也很耗时,同时HttpURLConnection底层 共享优化的也很不错。HttpClient的优势照旧在于去构建简朴的客户端,可以或许处 理附加cookies等特别需求。

4.链式处理惩罚的环境下,上下文中共享信息淘汰数据频繁会见缓存。

5.操纵系统设置以及Web容器的设置会直接影响应用的机能,出格是一些 Socket交互较量频繁,会有很大并发的应用。详细的设置可以拜见最后的说明。

6.APR模式对付处事器处理惩罚本领有很大的影响,Epoll和Unix socket城市来 带很大的机能提高(低落资源耗损)。

7.在已往谈过异步Servlet的方法(Servlet3.0的特性之一),可是JBoss5 测试下来看,不变性并欠好,而且大概会有一些并发问题。

8.先列出机能瓶颈大概点,然后别离对已经优化的模块举办单独测试,最后 整合而且通过多场景测试来验证优化功效。

附加信息:

JBoss Web Container设置:

<Connector port="8128" address="${jboss.bind.address}"

         maxThreads="1024" maxHttpHeaderSize="8192"

         emptySessionPath="true" protocol="HTTP/1.1"

         enableLookups="false" redirectPort="8443" acceptCount="1024"

         connectionTimeout="20000" disableUploadTimeout="true" useBodyEncodingForURI="true"/>

Apache work的设置:

#p#分页标题#e#

Keep alive off

<IfModule worker.c>

ServerLimit          80

ThreadLimit          128

StartServers         10

MaxClients           8000

MinSpareThreads      64

MaxSpareThreads      800

ThreadsPerChild      100

MaxRequestsPerChild 10000

</IfModule>

Linux设置信息:

执行:vi /etc/sysctl.conf

添加一行:net.ipv4.ip_local_port_range = 1024 65535

再执行:sysctl -p

变动ulimit –n属性,可用端口数,尚有ip_conntrack_max

APR:

Tomcat优化了IO(sendfile,epoll,OpenSSL)。操纵系统的一些函数(随机数的 发生,系统状态的获取等),当地历程优化(共享内存,NT的管道,Unix的 Socket)。Tomcat有设置监听器直接会检测APR模块是否存在,在bin目次下成立 native目次,而且安排对应的so或则dll即可。

    关键字:

在线提交作业