监控c3p0的连接池
SqlSession session = SessionFactory.getSqlSession(dbid);
List<Map<String, Object>> resultList = session.getMapper(Mapper.class).getData(params);
ConcurrentHashMap<String, SqlSessionFactory> sessionFactoryPool = SessionFactory.getSessionFactoryPool(); Enumeration<String> keys = sessionFactoryPool.keys();
while (keys.hasMoreElements())
{
String dbid = (String) keys.nextElement();
// System.out.println("dbid : " + dbid);
SqlSessionFactory sqlSessionFactory = sessionFactoryPool.get(dbid);
Configuration configuration = sqlSessionFactory.getConfiguration();
Environment environment = configuration.getEnvironment();
DataSource dataSource = environment.getDataSource();
if (dataSource instanceof PooledDataSource)
{
PooledDataSource pds = (PooledDataSource) dataSource;
Collection allUsers = pds.getAllUsers();
System.out.println(allUsers);
//获取总连接数
System.err.println(dbid + ": num_connections: " + pds.getNumConnectionsDefaultUser());
//获取使用中的连接数
System.err.println(dbid + ": num_busy_connections: " + pds.getNumBusyConnectionsDefaultUser());
//获取空闲连接数
System.err.println(dbid + ": num_idle_connections: " + pds.getNumIdleConnectionsDefaultUser());
//获取未关闭的连接数
System.err.println(dbid + ": num_unclosed_connections: " + pds.getNumUnclosedOrphanedConnectionsDefaultUser());
System.err.println();
}
else
{
System.err.println("Not a c3p0 PooledDataSource!");
}
}
return resultList;
控制台输出结果
dbid1: num_connections: 10
dbid1: num_busy_connections: 0
dbid1: num_idle_connections: 10
dbid1: num_unclosed_connections: 0 dbid2: num_connections: 10
dbid2: num_busy_connections: 7
dbid2: num_idle_connections: 3
dbid2: num_unclosed_connections: 0 dbid3: num_connections: 10
dbid3: num_busy_connections: 0
dbid3: num_idle_connections: 10
dbid3: num_unclosed_connections: 0
监控c3p0的连接池的更多相关文章
- Hibernate整合C3P0实现连接池
Hibernate整合C3P0实现连接池 hibernate中可以使用默认的连接池,无论功能与性能都不如C3PO(网友反映,我没有测试过),C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI ...
- c3p0 数据连接池 流行开源
注意事项:配置文件规定命名,不能更改 c3p0-config <?xml version="1.0" encoding="UTF-8"?>< ...
- 选择c3p0作为连接池
<hibernate-configuration> <session-factory> <property name="dialect& ...
- Java Web(十) JDBC的增删改查,C3P0等连接池,dbutils框架的使用
前面做了一个非常垃圾的小demo,真的无法直面它,菜的抠脚啊,真的菜,好好努力把.菜鸡. --WH 一.JDBC是什么? Java Data Base Connectivity,java数据库连接,在 ...
- c3p0写连接池 Demo
1.导包 2.配置文件:名称必须为:c3p0-config.xml,且必须放在src根目录下 <c3p0-config> <!-- 默认配置,有且仅可出现一次 ,如果没有指定则使用这 ...
- DBCP、C3P0、Proxool 、 BoneCP开源连接池的比《转》
简介 使用评价 项目主页 DBCP DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序用使用 可以设置最大和最小连接,连接等待时 ...
- 开源DBCP、C3P0、Proxool 、 BoneCP连接池的比较
简介 项目主页 使用评价 DBCP DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序用使用 http://homepages.nild ...
- (转载)DBCP、C3P0、Proxool 、 BoneCP开源连接池的比较
原文链接: http://blog.csdn.net/miclung/article/details/7231553 简介 使用评价 项目主页 DBCP DBCP是一个依赖Jakarta ...
- jdbc(1)(三)DBCP、C3P0、Proxool 、 BoneCP开源连接池的简介
简介 使用评价 项目主页 DBCP DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序用使用 可以设置最大和最小连 ...
随机推荐
- linux FTP安全配置
linux FTP安全配置 关闭防火墙,selinux安全机制 service iptables stop setenforce 0 匿名用户 匿名用户只能访问ftp服务器上的/var/ftp/ ...
- 基于Angular和Spring WebFlux做个小Demo
前言 随着Spring Boot2.0正式发布,Spring WebFlux正式来到了Spring Boot大家族里面.由于Spring WebFlux可以通过更少的线程去实现更高的并发和使用更少的硬 ...
- 013_实践HTTP206状态:部分内容和范围请求
HTTP 2xx范围内的状态码表明了:"客户端发送的请求已经被服务器接受并且被成功处理了".HTTP/1.1 200 OK是HTTP请求成功后的标准响应,当你在浏览器中打开www. ...
- 实验吧 简单的SQL注入1
解题链接:http://ctf5.shiyanbar.com/423/web/ 解题思路:一, 输入1,不报错:输入1',报错:输入1'',不报错. 二 , 输入1 and 1=1,返回1 1 ...
- MSIL学习------从HelloWorld开始
我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=3889z1y72b28 ...
- UNICODE与ASCII
1.ASCII的特点 ASCII 是用来表示英文字符的一种编码规范.每个ASCII字符占用1 个字节,因此,ASCII 编码可以表示的最大字符数是255(00H—FFH).这对于英文而言,是没有问题的 ...
- websocket作用及意义
Browser已经支持http协议,为什么还要开发一种新的WebSocket协议呢?我们知道http协议是一种单向的网络协议,在建立连接后,它只允许Browser/UA(UserAgent)向WebS ...
- openstack搭建之-horizon配置(14)
一.ctrl控制节点安装horizon #安装软件yum install openstack-dashboard -y vim /etc/openstack-dashboard/local_setti ...
- wince单实例启动
static class Program { [DllImport("Toolhelp.dll")] public static extern IntPtr CreateToolh ...
- php函数 array_chunk
array_chunk ( array $array , int $size [, bool $preserve_keys = false ] ) : array 将一个数组分割成多个数组,其中每个数 ...