1. mysql参数优化
--查看最大连接数
show variables like 'max_connections';
--修改最大连接数
set GLOBAL max_connections=1000;
--最大睡眠时间
show global variables like 'wait_timeout' ;
--自动杀死线程。
set global wait_timeout=300;
show global variables like 'interactive_timeout';
set global interactive_timeout=500;
刚刚的配置是临时修改,重启mysql会失效。可以通过修改mysql的配置/etc/my.cnf 添加 max_connections=1000
还有超时时间设置,wait_timeout = 300 和interactive_timeout = 500,然后重启mysql服务。
2. 系统数据源连接池配置
路径:tomcat-8.5.51_portal4/webapps/uPortal/WEB-INF/classes/properties/contexts/datasourceContext.xml
<!-- base pooled datasource with common configuration -->
<bean id="basePooledDataSource" class="org.jasig.portlet.utils.jdbc.TomcatDataSourceFactory" abstract="true">
<property name="baseObjectName" value="uPortal:section=DataSource,name=" />
<property name="mBeanServer" ref="mbeanServer" />
<property name="initialSize" value="10" />
<property name="minIdle" value="10" />
<property name="maxActive" value="500" />
<property name="maxIdle" value="150" />
<property name="maxWait" value="5000" /> <!-- 5 seconds -->
<property name="maxAge" value="3600000" /> <!-- 1 hour -->
<property name="minEvictableIdleTimeMillis" value="60000" /> <!-- 5 minutes -->
<property name="abandonWhenPercentageFull" value="70" />
<property name="removeAbandoned" value="true" />
<property name="removeAbandonedTimeout" value="60" />
<property name="jdbcInterceptors" value="ConnectionState(useEquals=true);ResetAbandonedTimer"/>
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="true" />
<property name="delayedValidationQueryResolver" ref="delayedValidationQueryResolver" />
</bean>
3. 后台任务线程池以及portlet线程池优化
路径:tomcat-8.5.51_portal4/portal/uPortal_overrides.properties
##
## 用于为所有请求类型执行portlet的线程池。
##
org.jasig.portal.portlet.worker.threadPool.initialThreads=5
org.jasig.portal.portlet.worker.threadPool.maxThreads=500
org.jasig.portal.portlet.worker.threadPool.threadPriority=5
org.jasig.portal.portlet.worker.threadPool.keepAliveSeconds=300
################################################################################
## ##
## Task Scheduler/Executor Configuration ##
## ##
################################################################################
##
## 后台任务执行器线程池配置,最大线程数等于并发后台任务的最大数量
##
org.jasig.portal.task.exec.threadPool.initialThreads=0
org.jasig.portal.task.exec.threadPool.maxThreads=500
org.jasig.portal.task.exec.threadPool.threadPriority=5
org.jasig.portal.task.exec.threadPool.keepAliveSeconds=300
##
## 后台任务计划程序线程池配置
##
org.jasig.portal.task.sched.threadPool.poolSize=4