您的当前位置:首页GlassFish服务器集群搭建

GlassFish服务器集群搭建

来源:小侦探旅游网
数据源的集成-使用统一的数据源连接池

本文介绍如何将数据库链接(JDBC)转换为容器的资源并对外提供JNDI服务

数据库链接为什么使用GlassFish 提供的JNDI 而不是JDBC

使用GlassFish的JNDI数据库链接可以使用到容器提供的数据源连接池

为什么要使用统一的数据库连接池

当前公司所有的系统都有自己的jdbc数据源,这些数据源存在着严重的资源浪费。

比如iwar数据源的设置为默认开辟10个数据库链接,而平时只用到5个,高峰期用到12个

IBillpay数据源的设置默认开辟20个数据库链接,平时15个,高峰期30个。

如果iwar 和 IBillpay使用同一个数据源,则可以减少数据库链接数,共用更多的链接数

容器本身的数据库连接池肯定比托管的开源数据库连接池如c3p0、common-dbcp等要更优秀

第一步 将数据库驱动jtds-1.2.2.jar放入到%GlassFishHome% \\glassfish\\domains\\domain1\\lib\\ext

根据规范,统一选择jtds JDBC驱动

第二步 新建一个连接池,用来存放和预分配数据库链接

第三步 选择一个合适的Resource Type 推荐将事务控制的任务交给容器来完成,目前我们所有程序的事务控制Spring Framework来完成,这样的话,将不能跨系统,更不能跨容器。

这里我选择的是 java.sql.ConnectionPoolDataSource,除了提供本地事务之外,提供数据连接的新能改进

填写后如下,点击右上角的Next

第四步:这一页要填写的东西很多,如下图,填写完毕后,点击Finish

第五步 连接池创建成功显示如下信息:

第六步,创建JDBC Resources(JNDI) 如下图

第七步: 输入jndi Name, 选择之前创建的DMSPool,点击OK

带连接池的数据库JNDI创建好了,如下:

第十步,在app中将datasource的jdbc换成现在的jndi

class=\"org.springframework.jndi.JndiObjectFactoryBean\" >

jdbc/DMSPool

IWAR中测试成功

因篇幅问题不能全部显示,请点此查看更多更全内容