Child pages
  • Operating Servoy Application Servers in a Cluster
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Servoy Application Servers that operate within a servoy Cluster can, for the most part be seen as normal Servoy Application Servers. This chapter describes the differences and the things to look out for.

Servoy Application Server instances that are part of a Servoy Cluster share the same Servoy Repository, databases and databroadcasting mechansism. This means the following:

Solution imports
Import of solutions into a Servoy Application Server connected to the Servoy Cluster will broadcast to all connected Servoy Application Servers. When using the pre- and post import hooks ic.w. the Maintenance plugin, all operations performed by the Maintenance plugin will operate on the entire cluster.

Databases & databroadcasting
All the Servoy Application Servers in the cluster need to connect to the same set of databases. Although the connection settings might differ, the physical database to which a Database Server connects needs to be the same, otherwise the databroadcasting mechanism will work incorrectly.

The following things need to be taken into account when operating Servoy Application servers within a servoy Cluster:
Server plugins
Server plugins live on the server side. Unless specifically build to operate within a Servoy Cluster, each Servoy Application Server will instantiate an instance of the plugin. Depending on what the plugin does this might be ok or not.

All plugins that are shipped by default with Servoy will be instantiated on each individual Servoy Application server.

The RestfulWS plugin for example, which operates partly serverside, has a serverside setting, detailing the maximum number of licenses used for handling concurrent requests. As the plugin gets instantiated on each Server Application Server, this value is the maximum number per Servoy Application Server.

When using 3rd party plugins, check with the vendor if the plugins support operating in a Servoy Cluster.

Properties
A Servoy Application Server stores all of it's settings in the serrvoy.properties file in <servoy>/application_server. When running inside a Servoy Cluster, each Servoy Application Server instance still has it's onw servoy.properties file.

Many of the properties will have to have the same value, to provide the enduser with a consistent behavior, regardless of which Servoy Application Server they connect to.

Except for the useAjax setting on solutions and solutions itself, changes to the configuration of a Servoy Application Server instance are not broadcasted to the other Servoy Application Servers in the cluster. This means that configuration changes need to be applied to all Servoy Application Servers in the cluster manually.

Folder contents
Some folders under the Servoy Application Server install should have the same content for all clustered servers:

  • application_server/beans
  • application_server/drivers
  • application_server/lafs
  • application_server/plugins
  • application_server/server/webapps/ROOT/servoy-webclient/templates

You can use a shared disk or (r)sync program for these folders, since you can modify them via WebDAV or admin page. Or you can keep them synced manually.

In order to activate/deactivate maintenance mode for only one server in the cluster you can use the "Server" maintenance mode buttons in the application server's administration page.

  • No labels