Java
来源:互联网 发布:淘宝账号密码破解 编辑:程序博客网 时间:2024/05/14 08:20
由于创建连接和释放连接都有很大的开销(尤其是数据库服务器不在本地时,每次建立连接都需要进行TCP的三次握手,释放连接需要进行TCP四次握手,造成的开销是不可忽视的),为了提升系统访问数据库的性能,可以事先创建若干连接置于连接池中,需要时直接从连接池获取,使用结束时归还连接池而不必关闭连接,从而避免频繁创建和释放连接所造成的开销,这是典型的用空间换取时间的策略(浪费了空间存储连接,但节省了创建和释放连接的时间)。池化技术在Java开发中是很常见的,在使用线程时创建线程池的道理与此相同。基于Java的开源数据库连接池主要有:C3P0、Proxool、DBCP、BoneCP、Druid等。
补充:在计算机系统中时间和空间是不可调和的矛盾,理解这一点对设计满足性能要求的算法是至关重要的。大型网站性能优化的一个关键就是使用缓存,而缓存跟上面讲的连接池道理非常类似,也是使用空间换时间的策略。可以将热点数据置于缓存中,当用户查询这些数据时可以直接从缓存中得到,这无论如何也快过去数据库中查询。
阅读全文
0 0
- java
- JAVA
- JAVA
- JAVA
- java
- Java
- Java
- JAVA:
- java
- java
- java
- java
- Java
- java
- java
- java
- JAVA?
- java
- N皇后问题(回溯VS全排列)
- PCM跟ADPCM的一些笔记
- 关于框架中核心的spring框架
- 工程相关解析(各种文件,资源访问)
- 使用<a href="javascript:void(0);">
- Java
- 随手写个node爬虫
- GIt的常用命令,git的常用命令,实用命令,git命令解析---1
- 线性表
- 来来来 静态方法的参数
- 分立元件制作RS232
- 初学java:从键盘输入字符串,并统计其中数字字符的个数
- Unity 使用TextMesh解决3D文字穿墙的问题
- 协方差到PCA算法