A cluster setup for Helma applications can be implemented at the web-node-level as well as at the db-node-level.
At the web-node-level several Helma instances (running on different machines) need to be able to communicate with each other. This can be acchieved by using the HelmaSwarm-extension. For further details please refer to the documentation coming along with HelmaSwarm. In order to distribute the incoming requests to these Helma instances either a load balancer (hardware or software based) can be installed, or load balancing on the DNS-level can be configured (see http://hacks.oreilly.com/pub/h/79), with the latter being a much cheaper, but less flexible solution.
At the db-node-level the clustering depends of course on the database system in use. If you use MySQL, then you can implement a Master/Slave setup on the db-side, and have the DB-requests being distributed on these instances via the ReplicationDriver that is part of MySQL's Connector/J (version 3.1.11 or higher; see http://dev.mysql.com/doc/mysql/en/cj-replication-connection.html).
### db.properties ### antville.url = jdbc:mysql://master,slave1,slave2,slave3/test antville.driver = com.mysql.jdbc.ReplicationDriver antville.user = user antville.password = pass antville.autoReconnect = true antville.roundRobinLoadBalance = true