标签:
weblogic核心调优:
性能包、阻塞线程、垃圾回收、块调整、TCP 缓冲积压、ssl
1、本地io性能包
在管理控制台中启动本地io,默认已经启动,enable native io
2、Socket Readers
默认队列中可用作套接口读取器的执行线程所占的百分比,默认30%,最大99%,来提高服务端接受客户端请求的速度和处理能力。
-Dweblogic:ThreadPoolPercentSocketReaders=value
3、wlsx线程阻塞
Stuck Thread Max Time
Sturck Thread Timer Interval
Struck Thread Count
Failure Action
auto Kill if fail
4、收集阀值(Gc)
Low Memory GC Threshold(判断内存低Gc阀值)
Low Memory Granularity Level(判断内存低的颗粒度级别)
Low Memory Sample Size(判断内存低的样例大小)
Low Memory Time Interval(判断内存低的时间间隔)
5、块调整
块是用于IO的临时缓冲区
weblogic jvm将网络数据划分为块
默认大小为4k
应为频繁使用网络的应用程序调整块大小,为负载高的工作负荷设置较大的值
调整块大小可以减少套接口的读写次数
调整块大小的命令行属性:-Dweblogic.Chunksize=n(n=chunksize)
确保块大小为mtu大小的倍数
确保块大小为8的倍数
将块大小调整为网络MTU的大小和操作系统的内存
同时在客户端和服务器端jvm上设置块大小,可以获得更好的性能
weblogic将块缓存个放在一个缓冲池中,以便重复使用:-Dweblogic.untils.io.chunkpoolsize=n
默认的块池大小为512
应该设置一个较大的块池,以适应具有较多并发客户的应用
6、tcp缓冲积压(Accept backlog)
默认值为300 最小值为0,最大值取决于操作系统
如果将accept backlog的值设的过低,大多连接数就会被丢失或在客户端被拒绝
Error:java.net.ConnectException:Connection refused:connect
如果将accept backlog的值设的过高,会给服务器带来开销
应该反复试验,通用原则4g内存=>accept backlog:8192
7、调整安全套接口(ssl)
减少单个ssl链接和我收到数量
减少单个ssl链接数据量的一种方法是使用支持htpp1.1的浏览器
将ssl处理从应用服务器转移到专用的ssl加速器
提高性能的一般原则
设计和编码者都要了解模块资源的使用、接口、时间等等
尽量减少数据库的大批量操作和远程调用
内存操作性能大于磁盘操作,多用缓存技术
严格管理session开销
架构上多采用垂直的和水平扩展。
标签:
原文地址:http://www.cnblogs.com/rubeitang/p/5746126.html