I am trying to run a pretty large seeding task, so have setup multiple tomcat 8 services running on different ports and deployed the latest geoserver WAR using a single data directory using the environment variable.

However when I then use the integrated GeoWebCache and seed an area it seems they overwrite each other even though the seeding type to SEED (rather than reseed).

Having read some more the of the docs there seems to be a Tile Locking Mechanism called NIO that can used.

NIO File locking: Uses Java New IO File Locks suitable for use in a clustered environment (with multiple GeoServers sharing the same data directory).

So on all my GeoServers I changed the configuration and re run a sample area and it still seems the different GeoServers are running independently.

In my GWC folder I do get a new lockfiles folder but nothing appears in it.

Maybe it is not working as I have set a different folder for the GWC tiles in the web.xml file rather than the shared data directory I used for the styles, workspaces and stores mentioned above.

Can anyone confirm or provide a way to get this to work?

1 Answer 1


The best way to do this is to have a single GWC that makes tile requests to each of the GeoServers in turn for tiles.

You can configure a Standalone GWC that points to a load balancer in front of the 8 GeoServers. GeoSolution's training documentation gives more details.

An alternative to that is to divide up your area of interest into 8 rectangles that don't overlap and seed with in those rectangles to prevent the GeoServer instances overwriting each other.

  • Hi Ian, many thanks for your answer. Do you know in what situation the NIO would work then? As the docs made me think my setup would work. I will use the 100km grid squares and get each tomcat/geoserver to do an area.
    – tjmgis
    Feb 7, 2020 at 9:47
  • I don't know much about NIO locking other than it doesn't work well on Windows or shared drives
    – Ian Turton
    Feb 7, 2020 at 10:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.