WebLogic Server 关键优化指标
昨天给客户做巡检,又将整个WebLogic Server的优化过程走了一遍,记录下来给大家参考。
1.JVM优化
查看
|
$ps –ef | grep java /opt/java1.5/bin/java -server -Xms256m -Xmx512m -XX:PermSize=16M -XX:NewSize=128m -XX:MaxPermSize=256m … |
参数设置原则
- 保持简单性
- 提供基本参数(-X 参数)-Xms、-Xmx、-Xmn
- 选择一个 GC/性能优先级,权衡吞吐量与暂停时间
- 其余参数大多使用默认值,(让人体工程机制计算正确值,仅当默认值无效时调优)
- 年轻代的大小将决定
- 次要 GC 的频率
- 次要 GC 收回的对象数量
- 年老代大小
- 应达到应用程序稳定状态的 实时数据大小
- 尝试最大限度减小主要 GC 的频率
- JVM 内存占用不应超过物理内存
- 最大达到 RAM 的 80-90%(为操作系统留出空间)
- 经验法则:应尽量增加年轻代收回的对象。尽量增加完整 GC 频繁
- Set –Xmx = –Xms
- 防止堆大小 (Full GC) 从 Xms 增大到 Xmx
- 性能更优
- 并非总是生产可用性的最佳选择(OOME 更合适使用内存交换)
- 持久代大小
- -XX:PermSize = -XX:MaxPermSize
- 持久代占用空间大小难以预测
- 设置足够高以防止 PermGen OOME
- 将 -XX:NewSize 设置为 -XX:MaxNewSize
- 优先使用 –Xmn
设置
一般来说在64位系统中开到4G-8G,如果有多租户的规划,可以开到更大,修改setDomainEnv.sh
也可以根据受管Server的名字设置不同的JVM,具体设置在USER_MEM_ARGS参数前
|
############# change jvm ######################### if [ "${SERVER_NAME}" = "" ] ; then SERVER_NAME="AdminServer" export SERVER_NAME fi if [ "${SERVER_NAME}" = "AdminServer" ] ; then USER_MEM_ARGS="-Xms512m -Xmx1024m -XX:MaxPermSize=512m" else USER_MEM_ARGS="-Xms4g -Xmx4g -XX:MaxPermSize=1024m" fi ############# e n d ######################### |
JVM GC文件输出设置
如果需要分析JVM GC日志,需要在启动时加入参数
|
Sun:-verbose:gc -XX:+PrintGCDetails -Xloggc:<filename> IBM:-Xverbosegc:file=filename 或 -Xverbosegclog:filename HP :-Xverbosegc=filename Oracle JRockit:-Xverbose:memory -XverboseLog:filename |
随后可以通过GCViewer进行脱机的日志查看。



2.关于线程
WebLogic Server在9以后引入了work manager机制,因此weblogic会自动对线程的数目进行优化,开发模式下初始线程数为15,生产模式下初始线程数为25
|
JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.threadpool.MinPoolSize=100 -Dweblogic.threadpool.MaxPoolSize=1000" export JAVA_OPTIONS |
一般线程数建议设置成100-500之间,线程太多容易引起进程内部的线程切换.
3.Accept BackLog
服务器->配置->优化->接受积压:

4.Muxer优化
Muxer定位:在前端接入请求,然后转交执行队列
- Java Muxer
- Native Muxer
- Non-Blocking IO Muxer
5.JDBC优化
- 理想情况下,设置为最小值 = 最大值,以避免按需创建连接
- 如果 DB 连接数受限,请将最小值设置为处理普通负载所需的连接数,将最大值设置为处理峰值负载所需的连接数,并启用池收缩
- Active Connections High Count
- Waiting on Connection High Count
- Wait Seconds High Count

缓存主要设置语句的条数,缺省为10,建议调大,设置成300
- 如果某数据源的数据库不可用,那么此选项设置为默认值 0 时 WLS 将无法启动!
- 设置为非零值可让服务器顺利启动并定期重试创建连接池
- 与 Test Connections On Reserve 共同发挥作用
- 可显著减少连接测试查询
- 仅有利于涉及多种资源的 XA 事务
- Last Logging Resource(非 XA)必须是数据库
WebLogic Server 关键优化指标的更多相关文章
- SQL SERVER性能优化综述
SQL SERVER性能优化综述 一个系统的性能的提高,不单单是试运行或者维护阶段的性能调优的任务,也不单单是开发阶段的事情,而是在整个软件生命周期都需要注意,进行有效工作才能达到的.所以我希望按照软 ...
- SQL SERVER全面优化-------写出好语句是习惯
前几篇文章已经从整体提供了诊断数据库的各个方面问题的基本思路...也许对你很有用,也许你觉得离自己太远.那么今天我们从语句的一些优化写法及一些简单优化方法做一个介绍.这对于很多开发人员来说还是很有用的 ...
- SQL SERVER全面优化
今天我们从语句的一些优化写法及一些简单优化方法做一个介绍.这对于很多开发人员来说还是很有用的!为了方便阅读给出前文链接: SQL SERVER全面优化-------Expert for SQL Ser ...
- 关于Weblogic Server(介绍)
Weblogic, 美国Oracle公司名下产品,是一个基于 J2EE 架构.可扩展的应用服务器. 本文档选取部分官方文档翻译 总览 支持多种类型的分布式应用 基于 SOA 应用的理想架构 完整实现 ...
- J2EE之WebLogic Server
WebLogic是用于开发.集成.部署和管理大型分布式Web应用. 网络应用和数据库应 用的Java应用server. 将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用 ...
- SQL Server 性能优化(一)——简介
原文:SQL Server 性能优化(一)--简介 一.性能优化的理由: 听起来有点多余,但是还是详细说一下: 1.节省成本:这里的成本不一定是钱,但是基本上可以变相认为是节省钱.性能上去了,本来要投 ...
- --BEA官方网站(http: //www.bea.com)甲骨文已完成对该公司的收购BEA Weblogic Server 7.0x应用服务器简明安 装、配置手册 1
====================简 介: BEA公司是业内著名的中间件产商,以Tuxedo及Weblogic闻名于世,而其基础件平台(infrastructure)Weblogic platf ...
- WebLogic Server
前几天,看了几集J2ee , 给我的感觉就是,看不懂!! 一点也不懂! 那怎么办呢? 听老师的,不管懂不懂,先看看再说.接下来,就开始了J2ee "艰苦"的历程.在J2ee中,经常 ...
- SQL SERVER全面优化-------Expert for SQL Server 诊断系列
现在很多用户被数据库的慢的问题所困扰,又苦于花钱请一个专业的DBA成本太高.软件维护人员对数据库的了解又不是那么深入,所以导致问题迟迟不能解决,或只能暂时解决不能得到根治.开发人员解决数据问题基本又是 ...
随机推荐
- vijos P1051 送给圣诞夜的极光
调了好久... #include <cstdio> #include <queue> using namespace std; char a[110*110]; /****** ...
- ros bashrc 无法source setup.sh
不知道什么时候开始的,莫名其妙首先是QT闪退,无法找到头文件,然后命令行进去catkin无法提示catkin_make 手动source之后就好了 问题出现在bashrc中source失败了 所以检查 ...
- 【hdoj_1050】Moving Tables
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1050 题意为: 为了叙述方便,把一个房间里面的桌子移动到另一个房间称为一个移动,给出若干个要求完成的移 ...
- 赤峰项目Nginx进程异常的处理办法
#强制杀掉Nginxps -ef|grep nginx|grep -v grep|awk '{print $2}'|xargs kill -9rm -rf /usr/local/openresty/n ...
- 手工安装kubernetes
参考的URL是 http://www.cnblogs.com/zhenyuyaodidiao/p/6500830.html 安装kubernets本身比较顺利,只是作dashboard时,老是日文版, ...
- sybase ase 重启
sybase ase 重启 https://blog.csdn.net/davidmeng10/article/details/50344305 https://blog.csdn.net/wengy ...
- C#在 64位系统下出现 “未能加载文件或程序集”错误
64位系统下,Build的时候,如果选择Any CPU,默认会按照64位进行编译,便无法加载某些旧的dll,这些dll可能是特定到X86 CPU的. 所以,把编译选项中改为 X86CPU,就可以运行了 ...
- 提取windows用户明文密码
前段时间mimikatz热传,主要是因为可以直接提取当前登录用户明文密码. 其实,有个更厉害的神器,无需那么多命令操作,一个命令搞定: C:\>wce -w WCE v1.3beta (Wind ...
- UVA 10341.Solve It-二分查找
二分查找 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好:其缺点是要求待查表为有序表,且插入删除困难.因此,折半查找方法适用于不经常变动而查找频繁的有序列表.首先,假设表中元素是按升序 ...
- POJ 3264 Balanced Lineup 【线段树/区间最值差】
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 62103 Accepted: 29005 Cas ...