Hi list members,
From former threads I got the impression, that there are some folks
interested in the Oracle/Mapserver/Java/Tomcat.
Therfore I'd like to share experiences I made with using Connection-Pooling of
Oracle-Connections inside Java/Tomcat.
Testenvironment: Mapserver 4.6.2; Suse-Linux; Tomcat 4.1.31; Sun-Java 1.4.2
Simulating 5 Browsers, which produce maps, query features, make selections,
query-legend-pics frequently.
- After using synchronized "enough" I didn't have crashes of Tomcat.
- Big memory leak: Between the first 5 requests and the next 100 requests
the Tomcat-process became about 400MB bigger. (I use "top" for
watching memory-footprint.)
- Cleaning the Connection-Pool "by hand". This means:
Opening the function msConnPoolCloseUnreferenced in mappool.c
for use in Java and call it after every request.
- After this I still have memory leaks: About 100MB for 30.000 requests.
(I also made a test: 25.000 requests without Connection pooling. Memory increased
and decreased as expected in this case.)
- Performancecomparison in my testcase:
Without use of connection-pooling: ~ 50 Request per minute
With use of connection-pooling: ~75 Request per minute
As a result I have the following encouragements:
- Making msConnPoolCloseUnreferenced availabe for mapscript via swig.
(I made a hack by directly editing mapscript/java/mapscript_wrap.c and
Java-Files in mapscript/java/edu/umn/gis/mapscript.) I think this
function could be part of the mapscript-Object?
- Investigations on the memory leaks. Both leaks shouldn't occure. (I'll do
this, if I find time. but ...)
- Fernando Simon: What about using OCI-Connection-Pooling for oracle instead the mappool.c?
http://oraclesvca2.oracle.com/docs/cd/B14117_01/appdev.101/b10779/oci09adv.htm#452244
(If you don't have time, I maybe could help coding. But would it become part uf Mapserver?)
Happy new year to everybody
Benedikt Rothe
- [UMN_MAPSERVER-USERS] Oracle-Connection-Pooling in Java Benedikt Rothe
- Re: [UMN_MAPSERVER-USERS] Oracle-Connection-Pooling... Umberto Nicoletti
- Re: [UMN_MAPSERVER-USERS] Oracle-Connection-Poo... Benedikt Rothe
- Re: [UMN_MAPSERVER-USERS] Oracle-Connection... Umberto Nicoletti
- [UMN_MAPSERVER-USERS] Antwort: Re: [UMN... Benedikt Rothe
- Re: [UMN_MAPSERVER-USERS] Oracle-C... Umberto Nicoletti
- Re: [UMN_MAPSERVER-USERS] Orac... Fernando Simon
- Re: [UMN_MAPSERVER-USERS] ... Umberto Nicoletti
- Re: [UMN_MAPSERVER-USERS] Oracle-Connection-Pooling... Umberto Nicoletti
- Re: [UMN_MAPSERVER-USERS] Oracle-Connection-Poo... Benedikt Rothe
- Re: [UMN_MAPSERVER-USERS] Oracle-Connection... Umberto Nicoletti
