为了简化数据库开发,缺省有效地管理数据库资源,Snap-ConnectionPool以最简单的方式,为应用供以一个有效的数据库资源管理工具。
Snap-ConnectionPool以缓冲池的机制,在一定数量上限范围内,控制管理Connection,Statement和 ResultSet。任何数据库的资源是有限的,如果被耗尽,则无法获得更多的数据服务。在大多数情况下,资源的耗尽不是由于应用的正常负载过高,而是程 序原因。在实际工作中,数据资源往往是瓶颈资源,不同的应用都会访问同一数据源。其中某个应用耗尽了数据库资源后,意味其他的应用也无法正常运行。因此, Snap-ConnectionPool的第一个任务是限制:每个应用或系统可以拥有的最大资源。也就是确定连接池的大小(PoolSize)。
ConnectionPool的第二个任务:在连接池的大小(PoolSize)范围内,最大限度地使用资源,缩短数据库访问的使用周期。 许多数据库中,连接(Connection)并不是资源的最小单元,控制Statement资源比Connection更重要。以Oracle为例:
对资源的申请、释放、回收、共享和同步,这些管理是复杂精密的。所以,Snap-ConnectionPool的另一个功能就是, 封装 这些操作,为应用提供简单的,甚至是不改变应用风格的调用接口。