To get the most benefit from running GeoServer in a production environment, we should consider running a cluster of GeoServer instances. There are many reasons why we should do this, but the two key reasons are:
Performance: We can spend a lot of time and effort optimizing a single instance of GeoServer to make it perform well, or we can implement several well-configured instances as a cluster. By increasing the number of instances available to service requests, we can clearly increase the number of concurrent requests that we can handle. The important thing, though, is that we spread the increased load across multiple instances rather than a single instance.
High availability: The last thing we want happening, when running in a production environment, is for our server to fail and stop servicing requests. If we have a single instance of GeoServer, then we have a single point of failure within our environment. However, if we have a cluster of instances running...