Sco*_*ner 5 java tomcat jndi jdbc java-ee
现在,我们有了一个Web应用程序,我们为每个客户端部署了一个副本。我们当前的部署策略是为每个实例创建一个唯一命名的jdbc连接池。所以说jdbc / client。他们这样指定...
< Context path="/"
reloadable="true"
docBase="\home\client\ROOT"
debug="5" >
< Resource name="jdbc/client"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
validationQuery="SELECT 1"
testWhileIdle="true"
timeBetweenEvictionRunsMillis="300000"
numTestsPerEvictionRun="6"
minEvictableIdleTimeMillis="1800000"
maxWait="10000"
username="user"
password="pass"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://databaseserver:3306/client ?zeroDateTimeBehavior=convertToNull&jdbcCompliantTruncation=false"/>
< /Context>
Run Code Online (Sandbox Code Playgroud)
问题是,如果我要对其进行标准化,以便在所有已部署实例上将连接池而不是唯一名称称为jdbc / database,那么是否存在数据库交叉的可能,即一个客户在另一个客户的数据库中,或者这些本地化到一个特定的已部署实例?
有什么想法吗?谢谢,斯科特
否。数据源名称的范围是一个Tomcat实例。
如果要为每个客户启动一个单独的Tomcat进程,那么所有重要的是数据源的配置方式,而不是Tomcat所谓的配置方式。只要将每个数据源配置为使用不同的数据库,就不会有任何串扰。
| 归档时间: |
|
| 查看次数: |
3323 次 |
| 最近记录: |