连接池
来源:互联网 发布:开淘宝店铺照片要求 编辑:程序博客网 时间:2024/06/07 05:11
频繁的数据库连接操作势必占用很多的系统资源,响应速度必定下降。程序出现异常而未能关闭,将会导致数据库系统中的内存遗漏,最终将不得不重启数据库。系统资源被毫无顾忌的分配出去,如果连接过多,也可能导致内存遗漏,服务器崩溃。
连接池的工作流程
为数据库建立一个缓冲池。预先在缓冲池中放入一定数量的连接,当需要建立连接时,只需要从缓冲池中取出一个,使用完毕在放回去,通过设定连接池最大连接数来防止系统无休止的数据库连接。更为重要的是可以通过连接池的管理机制监视数据库的连接的数量,使用情况,位系统开发,测试及性能调整提供依据。
连接池的工作流程:
持久层向连接池申请一个链接。连接池返回一个空闲连接,如果没有空闲连接,那就检查连接池中的连接数量是否到达最大连接数量。如果没有到达最大连接数,则建立新的连接对象放入连接池中。如果连接池最大连接数量,那么用户就需要等待。这是可以设置最大等待时间来控制用户的等待状态。等待时间内,有别的连接对象释放,那么就分配等待用户。如果超时就返回null。
Hibernate常见的优化策略
用高版本的hibernate
制定合理的缓存策略
采用合理的session管理机制
尽量使用延迟加载
如有可能,采用UUID作为主键生成策略
如果可能,选用乐观锁代替悲观锁
在开发中,显示hibernate执行sql语句,从而指定更好的实现策略
复杂查询和统计时可以使用sql语句完成。甚至可以考虑使用存储过程完成
0 0
- 连接池连接mysql
- 连接池管理连接
- 连接池连接数据库
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- 连接池
- Java网络编程学习笔记(六)服务器Socket
- 【嵌入式】字符驱动开发框架
- 详解Qt动画框架(2)--- 实现网易云音乐tag切换
- 用Java模拟网卡、声卡继承PIC接口,实现网卡、声卡能与主板连接
- C语言实现字节流与十六进制字符串的相互转换
- 连接池
- 不同版本(2.3,2.4,2.5,3.0,3.1)的Servlet web.xml 头信息
- java字符串反转方法【全】
- Android自定义控件:如何使view动起来?
- Spring MVC
- Unity学习笔记 5th —— 第一人称FPS游戏制作
- CSS选择器
- Java之网络编程
- Android异步消息处理机制完全解析,带你从源码的角度彻底理解