Neseniai iš kolegos sužinojau, jog norint Tomcat Servlet konteineryje sukonfigūruoti JDBC prisijungimų prie duomenų bazės spartinančiąją atmintį (angl. connection cache) naudojant Oracle duomenų bazę, neužtenka tradicinių Tomcat data source atributų, kadangi jie (tie kurie susiję su prisijungimų spartinančiąja atmintimi) yra tiesiog ignoruojami.
Norint, kad spartinančioji prisijungimų atmintis veiktų su Oracle JDBC driveriais, reikia naudoti specialų connectionCacheProperties atributą konfigūruojant data source resursą Tomcat context.xml faile. Connection cache properties atribute naudojamų reikšmių sąrašas išsamiai aprašomas čia.
TEISINGAS APRAŠYMAS: Pavyzdinis context.xml faile aprašytas resursas atrodytų maždaug taip:
<Resource
auth="Container"
driverClassName="oracle.jdbc.OracleDriver"
factory="oracle.jdbc.pool.OracleDataSourceFactory"
name="jdbc/myOracle" password="pass" user="user"
type="oracle.jdbc.pool.OracleDataSource"
connectionCachingEnabled="true"
connectionCacheProperties="{PropertyCheckInterval=300, AbandonedConnectionTimeout=600,InactivityTimeout=1800,
MaxStatementsLimit=500,MinLimit=0, InitialLimit=0, ValidateConnection=true, ConnectionWaitTimeout=10, MaxLimit=10}"
url="jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.xx.xxx)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = xxxx)))"
/>
Rodyk draugams