您的位置:首页 > 产品设计 > UI/UE

阿里数据库监控druid配置

2016-09-02 19:40 519 查看
maven:

 <dependency>

            <groupId>com.alibaba</groupId>

            <artifactId>druid</artifactId>

            <version>1.0.13</version>

        </dependency>

<!-- 数据源 -->

    <context:property-placeholder location="classpath:jdbc.properties" />

    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">

        <property name="driverClassName" value="${jdbc.account.driverClassName}"/>

        <property name="url" value="${jdbc.account.url}"/>

        <property name="username" value="${jdbc.account.username}"/>

        <property name="password" value="${jdbc.account.password}"/>

        <!--<property name="driverClassName" value="${jdbc.driver}"></property> -->

        <!-- 配置初始化大小、最小、最大 -->

        <property name="initialSize" value="5"/>

        <!-- 连接池中最少空闲maxIdle个连接 -->

        <property name="minIdle" value="5"/>

        <!-- 连接池激活的最大数据库连接总数。设为0表示无限制 -->

        <property name="maxActive" value="300"/>

        <!-- 最大建立连接等待时间,单位为 ms,如果超过此时间将接到异常。设为-1表示无限制 -->

        <property name="maxWait" value="60000"/>

        <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->

        <property name="timeBetweenEvictionRunsMillis" value="60000"/>

        <!-- 配置连接池中连接可空闲的时间(针对连接池中的连接对象.空闲超过这个时间则断开,直到连接池中的连接数到minIdle为止),单位是毫秒 -->

        <property name="minEvictableIdleTimeMillis" value="300000"/>

        <!-- 用来检测连接是否有效的sql,要求是一个查询语句 -->

        <property name="validationQuery" value="SELECT 'x' FROM DUAL"/>

        <!-- 建议配置为true,不影响性能,并且保证安全性 -->

        <property name="testWhileIdle" value="true"/>

        <!-- 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能 -->

        <property name="testOnBorrow" value="false"/>

        <!-- 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能 -->

        <property name="testOnReturn" value="false"/>

        <!-- 打开PSCache,并且指定每个连接上PSCache的大小(Oracle或mysql5.5及以上使用) -->

        <property name="poolPreparedStatements" value="true"/>

        <property name="maxPoolPreparedStatementPerConnectionSize" value="20"/>

        <!-- 配置监控统计拦截的filters -->

        <property name="filters" value="stat"/>

        <!-- 配置关闭长时间不使用的连接 -->

        <!-- 是否清理removeAbandonedTimeout秒没有使用的活动连接,清理后并没有放回连接池(针对未被close的活动连接) -->

        <property name="removeAbandoned" value="true"/>

        <!-- 活动连接的最大空闲时间,1800秒,也就是30分钟 -->

        <property name="removeAbandonedTimeout" value="1800"/>

        <!-- 连接池收回空闲的活动连接时是否打印消息 -->

        <property name="logAbandoned" value="true"/>
    </bean>

web.xml 中配置查看页面

<!-- 数据库监控 -->
<servlet>
<servlet-name>DruidStatView </servlet-name>
<servlet-class>com.alibaba.druid.support.http.StatViewServlet </servlet-class>
<init-param>
<param-name>allow</param-name>
<param-value>192.168.98.125,127.0.0.1</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>DruidStatView </servlet-name>
<url-pattern>/druid/*</url-pattern>
</servlet-mapping>

访问地址:druid/index.html



原文地址:http://api.crap.cn/index.do#/top/webPage/detail/ARTICLE/9c27e62f-1c95-4428-af75-48f3b75d3281
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: