[Geoserver-users] Zooming problem (Sasha)

Hi all,

Hi Sasha,

Maybe just a stupid question, but...

When you measure these times you let all processes finish before clicking on zoom again? I mean, you could be accumulating processes from zoom to zoom and things start getting slow. And I dont know how efficient is the access to the shapefile from geoserver. In the case of PostGIS my application accumulates processes in the server while the user moves around with Google Maps (the user request faster than the server finish serving). In my case then things stabilize and I dont get to a crash like you... but maybe with shapefiles is different..

Just a suggestion.

Javier.

When I measured times I waited for processes to finish.
I've imported all shapefiles to PostGIS and can see some improvements in speed.
But still tables that have more then 400 rows are really slow on zoom level greater than 7 (this doesn't make sense, because at lower zoom level Geoserver has to create at least same amount of images. am I right?). Also I realized that GoogleMaps get slower at lower zoom level. Is this normal behavior?

It looks that if I want to add WMS layers to GoogleMaps (with reasonable performance) my layer has to have less than 400 records. am I right here?
Could someone provide some explanation why this is the case, or am I doing something wrong.

I read that some guy used caching to improve Geoserver/GoogleMap performance, but he doesn't provide any details on this.
any ideas on how to do this?

Thanking in advance,
Sasha

Javier de la Torre wrote:

> Hi Sasha,
>
> Maybe just a stupid question, but...
>
> When you measure these times you let all processes finish before > clicking on zoom again? I mean, you could be accumulating processes > from zoom to zoom and things start getting slow. And I dont know how > efficient is the access to the shapefile from geoserver. In the case > of PostGIS my application accumulates processes in the server while > the user moves around with Google Maps (the user request faster than > the server finish serving). In my case then things stabilize and I > dont get to a crash like you... but maybe with shapefiles is different..
>
> Just a suggestion.
>
> Javier.
>
> On 06/09/2006, at 4:27, Sasha wrote:
>
  

>> Hi all,
>>
>> I'm experiencing very weird problem with Geoserver. On my website I'm
>> using Google Maps to display some petroleum data. One of the options
>> that user is able to do is to display different layers on top of Google
>> maps. Everything works fine until user zoom in for a few levels. At this
>> stage Geoserver dramatically decrease speed of image rendering. To
>> illustrate this these are approx. times required to display one layer on
>> different zoom levels.
>>
>> * zoom level 4- 8 sec
>> * zoom level 5- 7 sec
>> * zoom level 6- 10 sec
>> * zoom level 7- 30 sec
>> * zoom level 8- 42 sec
>> * zoom level 9- 50 sec
>> * zoom level 10- 1 min 1 sec
>> * zoom level 11- >2min at this stage Geoserver (or Jetty) brakes
>> down and I have to restart it. I also realized that Java taking
>> 90% of my cpu usage on low zoom levels.
>>
>> Firstly I thought that this is the case because of the old hardware that
>> I used, but problem remains the same even after I bought the brand new
>> Dell server with plenty of memory space and processing speed. I'm pretty
>> sure that this problem is not related to Google Maps (but I maybe wrong)
>> because, browser waits for geoserver not for google server.
>> I also tried to deploy geoserver on Tomcat without much success (on
>> tomcat is even worse, because tomcat crash after zoom level 9).
>>
>> I am not sure what causing this problem, especially when at this stage
>> only one user uses this web application. So any ideas on how I should
>> approach this problem will be greatly,greatly appreciated.
>> (The layer is created from shapefile(2mb))
>>
>> Thanking in advance,
>> Sasha
>>
>> P.S. These are messages that I'm getting from Geoserver.
>>
>> WARN!! Exception for
>> /geoserver/wms?&REQUEST=GetMap&SERVICE=WMS&VERSION=1.1.1&LAYERS=topp:equal-500NorthEast&STYLES=&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&SRS=EPSG:4326&BBOX=142.03125,-27.059125784374054,143.4375,-25.79989118208832&WIDTH=256&HEIGHT=256&reaspect=false >>
>> java.lang.IllegalStateException
>> at
>> org.mortbay.jetty.servlet.ServletHttpResponse.getWriter(ServletHttpResponse.java:540) >>
>> at
>> org.vfny.geoserver.servlets.AbstractService.send(AbstractService.java:729) >>
>> at
>> org.vfny.geoserver.servlets.AbstractService.sendError(AbstractService.java:788) >>
>> at
>> org.vfny.geoserver.servlets.AbstractService.sendError(AbstractService.java:769) >>
>>
>> EVENT LOW ON THREADS ((50-47+0)<5) on SocketListener@anonymised.com:8080
>> WARN!! OUT OF THREADS: SocketListener@anonymised.com:8080
>> WARN!! No thread for Socket[addr=/10.0.0.186,port=2221,localport=8080]
>>
>> ------------------------------------------------------------------------- >>
>> Using Tomcat but need to do more? Need to support web services, >> security?
>> Get stuff done quickly with pre-integrated technology to make your >> job easier
>> Download IBM WebSphere Application Server v.1.0.1 based on Apache >> Geronimo
>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
>> _______________________________________________
>> Geoserver-users mailing list
>> Geoserver-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/geoserver-users
    

Sasha wrote:

Hi all,

Hi Sasha,

Maybe just a stupid question, but...

When you measure these times you let all processes finish before clicking on zoom again? I mean, you could be accumulating processes from zoom to zoom and things start getting slow. And I dont know how efficient is the access to the shapefile from geoserver. In the case of PostGIS my application accumulates processes in the server while the user moves around with Google Maps (the user request faster than the server finish serving). In my case then things stabilize and I dont get to a crash like you... but maybe with shapefiles is different..

Just a suggestion.

Javier.

When I measured times I waited for processes to finish.
I've imported all shapefiles to PostGIS and can see some improvements in speed.
But still tables that have more then 400 rows are really slow on zoom level greater than 7 (this doesn't make sense, because at lower zoom level Geoserver has to create at least same amount of images. am I right?). Also I realized that GoogleMaps get slower at lower zoom level. Is this normal behavior?

It looks that if I want to add WMS layers to GoogleMaps (with reasonable performance) my layer has to have less than 400 records. am I right here?
Could someone provide some explanation why this is the case, or am I doing something wrong.

I read that some guy used caching to improve Geoserver/GoogleMap performance, but he doesn't provide any details on this.
any ideas on how to do this?

Sorry, I need to write up a better tutorial on this. But I'm hoping to soon get an even easier way to do it.

Getting caching working is pretty easily actually. You have to use a tiling client like google maps or openlayers, and then you just set any http caching server in front of geoserver, set the featuretypes to 'caching enabled' and the time in seconds you want the cache to last, and it should just work.

We use squid (http://www.squid-cache.org/) on http://sigma.openplans.org and it works well. Saul's post has info on how to configure it: http://docs.codehaus.org/display/GEOSDOC/Clustering+and+Caching+GeoServer. Thijs (cced) also has reported success with OSCache's servlet filter: http://www.opensymphony.com/oscache/wiki/CacheFilter.html Hopefully he'll provide the rest of us with the settings he did.

best regards,

Chris

Thanking in advance,
Sasha

Javier de la Torre wrote:

Hi Sasha,

Maybe just a stupid question, but...

When you measure these times you let all processes finish before clicking on zoom again? I mean, you could be accumulating processes from zoom to zoom and things start getting slow. And I dont know how efficient is the access to the shapefile from geoserver. In the case of PostGIS my application accumulates processes in the server while the user moves around with Google Maps (the user request faster than the server finish serving). In my case then things stabilize and I dont get to a crash like you... but maybe with shapefiles is different..

Just a suggestion.

Javier.

On 06/09/2006, at 4:27, Sasha wrote:

Hi all,

I'm experiencing very weird problem with Geoserver. On my website I'm
using Google Maps to display some petroleum data. One of the options
that user is able to do is to display different layers on top of Google
maps. Everything works fine until user zoom in for a few levels. At this
stage Geoserver dramatically decrease speed of image rendering. To
illustrate this these are approx. times required to display one layer on
different zoom levels.

    * zoom level 4- 8 sec
    * zoom level 5- 7 sec
    * zoom level 6- 10 sec
    * zoom level 7- 30 sec
    * zoom level 8- 42 sec
    * zoom level 9- 50 sec
    * zoom level 10- 1 min 1 sec
    * zoom level 11- >2min at this stage Geoserver (or Jetty) brakes
      down and I have to restart it. I also realized that Java taking
      90% of my cpu usage on low zoom levels.

Firstly I thought that this is the case because of the old hardware that
I used, but problem remains the same even after I bought the brand new
Dell server with plenty of memory space and processing speed. I'm pretty
sure that this problem is not related to Google Maps (but I maybe wrong)
because, browser waits for geoserver not for google server.
I also tried to deploy geoserver on Tomcat without much success (on
tomcat is even worse, because tomcat crash after zoom level 9).

I am not sure what causing this problem, especially when at this stage
only one user uses this web application. So any ideas on how I should
approach this problem will be greatly,greatly appreciated.
(The layer is created from shapefile(2mb))

Thanking in advance,
Sasha

P.S. These are messages that I'm getting from Geoserver.

WARN!! Exception for
/geoserver/wms?&REQUEST=GetMap&SERVICE=WMS&VERSION=1.1.1&LAYERS=topp:equal-500NorthEast&STYLES=&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&SRS=EPSG:4326&BBOX=142.03125,-27.059125784374054,143.4375,-25.79989118208832&WIDTH=256&HEIGHT=256&reaspect=false

java.lang.IllegalStateException
        at
org.mortbay.jetty.servlet.ServletHttpResponse.getWriter(ServletHttpResponse.java:540)

        at
org.vfny.geoserver.servlets.AbstractService.send(AbstractService.java:729)

        at
org.vfny.geoserver.servlets.AbstractService.sendError(AbstractService.java:788)

        at
org.vfny.geoserver.servlets.AbstractService.sendError(AbstractService.java:769)

EVENT LOW ON THREADS ((50-47+0)<5) on SocketListener@anonymised.com:8080
WARN!! OUT OF THREADS: SocketListener@anonymised.com:8080
WARN!! No thread for Socket[addr=/10.0.0.186,port=2221,localport=8080]

-------------------------------------------------------------------------

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users
    
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

!DSPAM:1003,4508f77d132011365099012!

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org

Hi all,

At http://jira.codehaus.org/browse/GEOS-712 I've put a sample configuration that can be used to set up OSCache in Geoserver. It should be fairly easy to use in your own Geoserver webapp. Hope that helps with the caching. If you've got any questions, just let me know. For more details about OSCache, you could also take a look at the OSCache documentation.

Regards,
Thijs

At 20:33 18-9-2006, Chris Holmes wrote:

Sasha wrote:

Hi all,

Hi Sasha,

Maybe just a stupid question, but...

When you measure these times you let all processes finish before clicking on zoom again? I mean, you could be accumulating processes from zoom to zoom and things start getting slow. And I dont know how efficient is the access to the shapefile from geoserver. In the case of PostGIS my application accumulates processes in the server while the user moves around with Google Maps (the user request faster than the server finish serving). In my case then things stabilize and I dont get to a crash like you... but maybe with shapefiles is different..

Just a suggestion.

Javier.

When I measured times I waited for processes to finish.

I've imported all shapefiles to PostGIS and can see some improvements in speed.
But still tables that have more then 400 rows are really slow on zoom level greater than 7 (this doesn't make sense, because at lower zoom level Geoserver has to create at least same amount of images. am I right?). Also I realized that GoogleMaps get slower at lower zoom level. Is this normal behavior?
It looks that if I want to add WMS layers to GoogleMaps (with reasonable performance) my layer has to have less than 400 records. am I right here?
Could someone provide some explanation why this is the case, or am I doing something wrong.
I read that some guy used caching to improve Geoserver/GoogleMap performance, but he doesn't provide any details on this.
any ideas on how to do this?

Sorry, I need to write up a better tutorial on this. But I'm hoping to soon get an even easier way to do it.

Getting caching working is pretty easily actually. You have to use a tiling client like google maps or openlayers, and then you just set any http caching server in front of geoserver, set the featuretypes to 'caching enabled' and the time in seconds you want the cache to last, and it should just work.

We use squid (http://www.squid-cache.org/) on http://sigma.openplans.org and it works well. Saul's post has info on how to configure it: http://docs.codehaus.org/display/GEOSDOC/Clustering+and+Caching+GeoServer. Thijs (cced) also has reported success with OSCache's servlet filter: http://www.opensymphony.com/oscache/wiki/CacheFilter.html Hopefully he'll provide the rest of us with the settings he did.

best regards,

Chris

Thanking in advance,
Sasha
Javier de la Torre wrote:

Hi Sasha,

Maybe just a stupid question, but...

When you measure these times you let all processes finish before clicking on zoom again? I mean, you could be accumulating processes from zoom to zoom and things start getting slow. And I dont know how efficient is the access to the shapefile from geoserver. In the case of PostGIS my application accumulates processes in the server while the user moves around with Google Maps (the user request faster than the server finish serving). In my case then things stabilize and I dont get to a crash like you... but maybe with shapefiles is different..

Just a suggestion.

Javier.

On 06/09/2006, at 4:27, Sasha wrote:

Hi all,

I'm experiencing very weird problem with Geoserver. On my website I'm
using Google Maps to display some petroleum data. One of the options
that user is able to do is to display different layers on top of Google
maps. Everything works fine until user zoom in for a few levels. At this
stage Geoserver dramatically decrease speed of image rendering. To
illustrate this these are approx. times required to display one layer on
different zoom levels.

    * zoom level 4- 8 sec
    * zoom level 5- 7 sec
    * zoom level 6- 10 sec
    * zoom level 7- 30 sec
    * zoom level 8- 42 sec
    * zoom level 9- 50 sec
    * zoom level 10- 1 min 1 sec
    * zoom level 11- >2min at this stage Geoserver (or Jetty) brakes
      down and I have to restart it. I also realized that Java taking
      90% of my cpu usage on low zoom levels.

Firstly I thought that this is the case because of the old hardware that
I used, but problem remains the same even after I bought the brand new
Dell server with plenty of memory space and processing speed. I'm pretty
sure that this problem is not related to Google Maps (but I maybe wrong)
because, browser waits for geoserver not for google server.
I also tried to deploy geoserver on Tomcat without much success (on
tomcat is even worse, because tomcat crash after zoom level 9).

I am not sure what causing this problem, especially when at this stage
only one user uses this web application. So any ideas on how I should
approach this problem will be greatly,greatly appreciated.
(The layer is created from shapefile(2mb))

Thanking in advance,
Sasha

P.S. These are messages that I'm getting from Geoserver.

WARN!! Exception for
/geoserver/wms?&REQUEST=GetMap&SERVICE=WMS&VERSION=1.1.1&LAYERS=topp:equal-500NorthEast&STYLES=&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&SRS=EPSG:4326&BBOX=142.03125,-27.059125784374054,143.4375,-25.79989118208832&WIDTH=256&HEIGHT=256&reaspect=false

java.lang.IllegalStateException
        at
org.mortbay.jetty.servlet.ServletHttpResponse.getWriter(ServletHttpResponse.java:540)

        at
org.vfny.geoserver.servlets.AbstractService.send(AbstractService.java:729)

        at
org.vfny.geoserver.servlets.AbstractService.sendError(AbstractService.java:788)

        at
org.vfny.geoserver.servlets.AbstractService.sendError(AbstractService.java:769)

EVENT LOW ON THREADS ((50-47+0)<5) on SocketListener@anonymised.com:8080
WARN!! OUT OF THREADS: SocketListener@anonymised.com:8080
WARN!! No thread for Socket[addr=/10.0.0.186,port=2221,localport=8080]

-------------------------------------------------------------------------

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users
!DSPAM:1003,4508f77d132011365099012!

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org