Topic: What is meant by "scaling" when talking about Kete?
Topic type:
What does it mean to "scale" a Kete installation?
Originally written by Walter McGinnis, Kete Project Lead for Katipo Communications, Ltd.
Scaling, put simply, can be thought of as the process of adding computer resources as your Kete site grows to need them.
Thanks to being built on top of Ruby on Rails, Kete has been developed with scaling of Kete sites in mind. However, most of the Kete installation and configuration documentation describes a single host installation (quite often one machine connected to a network, but not always thanks to a technology called virtualization) where the database, Zebra search engine, proxy server, and Kete web application all reside on the same host. This type of installation is a sufficient starting point for most projects which is why we concentrate on it. Chances are good, depending on your particular machine resources, that you will derive enough performance from this set up to never need to scale, but some projects may grow to need more "grunt".
Sometimes adding more "grunt" just means adding more RAM or disk space to the same host which should be your first response, but sometimes your site's needs may grow beyond the available resources on your single host. That's where scaling comes in.
If you are lucky enough to exhaust the resources of this single host because your site is popular, you can split your software services off into their own dedicated hosts. Usually with Ruby on Rails applications, the database software is the first to be given a dedicated host. In Kete's case, the Zebra search engine is also a prime candidate for its own host.
Scaling options are best tailored to suit. So I'll leave it at that for now.