一、系统配置优化:提升底层资源利用率
/etc/sysctl.conf中添加net.ipv4.tcp_tw_reuse=1(复用TIME_WAIT连接)、net.ipv4.tcp_fin_timeout=30(缩短连接超时时间)、net.core.somaxconn=1024(增大连接队列长度);通过ulimit -n 65535(临时)及/etc/security/limits.conf(永久)增加文件描述符限制,避免高并发下连接被拒绝。noatime挂载选项(减少文件访问时间记录),提升磁盘I/O效率。二、JVM参数调优:减少内存与GC开销
-Xms)与最大堆(-Xmx)为相同值(如4GB),避免堆内存动态扩展带来的性能波动;例如,管理服务器(如aml_server、soa_server)可设置为-Xms4096m -Xmx4096m。-XX:+UseG1GC),其针对大堆内存设计,能减少Full GC次数,提升GC效率;避免使用Serial或Parallel GC(适用于小内存场景)。-XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/path/to/gc.log参数,通过GC日志分析内存回收情况,针对性优化堆大小或GC策略。三、WebLogic服务器配置优化:调整并发处理能力
Environment→Servers→[Server Name]→Configuration→Tuning)调整ThreadCount(默认15),根据CPU核心数(如4核)与应用并发需求设置为2-4倍(如8-16),避免线程过多导致上下文切换开销;同时调整ExecuteQueue的ThreadCount(如默认队列设为20),分离关键业务与非关键业务线程。Services→Data Sources→[Data Source Name]→Connection Pool),设置Initial Capacity(初始连接数,如20)、Max Capacity(最大连接数,如200)、Capacity Increment(增长步长,如10);开启Test Connections on Reserve(借用连接时测试有效性),避免无效连接占用资源。config.xml中设置NativeIOEnabled="true"(默认开启),使用平台优化的原生socket multiplexor提升网络性能;确保WebLogic版本安装了对应平台的Performance Pack(如Linux x86_64版本的性能包),进一步提升socket处理效率。四、应用层面优化:减少业务处理开销
JSP Page Check Interval设为较大值,如60秒),避免重复编译JSP。Cache Prepared Statements开启),减少SQL解析时间;配置连接池的Test Frequency(如30秒),避免频繁测试连接;对于读多写少场景,使用读写分离或数据库集群提升查询性能。五、监控与持续调优:动态调整参数
Monitoring标签页监控服务器CPU、内存、线程池、连接池的使用情况;或使用第三方工具(如Zabbix、Prometheus+Granafa)实时监控系统指标,及时发现性能瓶颈。server.log)中的错误与警告信息;使用jstat(监控GC情况)、jconsole(监控JVM内存与线程)、VisualVM(分析堆转储)等工具定位内存泄漏、线程阻塞等问题,针对性调整参数。