【发布时间】:2016-05-13 07:23:57
【问题描述】:
我在连接到 oracle 11g 的 redhat 6 中的 Jboss eap 6.3 上部署了 java 应用程序。 我正在使用这样的 jdbc 连接:
<datasource jta="true" jndi-name="java:/jdbc/myjdbc" pool-name="myConfigDS" enabled="true" use-java-context="true" use-ccm="false" statistics-enabled="true">
<connection-url>jdbc:oracle:thin:@(DESCRIPTION=(enable=broken)(ADDRESS=(PROTOCOL=TCP)(HOST=myhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=MYSERVICENAME)))</connection-url>
<connection-property name="oracle.net.CONNECT_TIMEOUT">10000</connection-property>
<driver>oracle</driver>
<pool>
<min-pool-size>1</min-pool-size>
<max-pool-size>30</max-pool-size>
<prefill>true</prefill>
</pool>
<security>
<user-name>myusername</user-name>
<password>mypassword</password>
</security>
<validation>
<check-valid-connection-sql>SELECT 1 FROM DUAL</check-valid-connection-sql>
<background-validation>true</background-validation>
<background-validation-millis>60000</background-validation-millis>
<stale-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleStaleConnectionChecker"/>
<exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter"/>
</validation>
<timeout>
<blocking-timeout-millis>5000</blocking-timeout-millis>
<idle-timeout-minutes>15</idle-timeout-minutes>
</timeout>
</datasource>
如果该应用在几个小时内空闲并且我们尝试查询 int 数据库,则会发生数据库 IO 连接超时。
在我的调查中,我假设如果内部没有流量,网络防火墙会阻止此连接。 我的问题是如何处理网络防火墙? jboss xml配置中的jndi连接内部是否有任何参数要添加?
【问题讨论】:
标签: oracle jdbc jboss firewall connection-timeout