Difference between revisions of "Hardware Server Guidelines"
(New page: How much resources do you need? This short guide explains the basic hardware requirements. The amount of hardware you need depends upon the amount of usage you are expecting. This is a fu...) |
m (Protected "Hardware Guidelines for Opentaps": Sysop page [edit=sysop:move=sysop]) |
(No difference)
|
Revision as of 18:29, 4 February 2010
How much resources do you need? This short guide explains the basic hardware requirements.
The amount of hardware you need depends upon the amount of usage you are expecting. This is a function the number of users and the amount of usage. For example, ecommerce stores could have very large numbers of users, but each user may only use it for very little time. In contrast, order entry and customer service applications tend to have a few high-volume users. Therefore, determining usage is a function of estimating the number of concurrent users, or how many of those users would be using your system at the same time.
Here are some guidelines for minimum hardware requirements:
- For demo and development, we can comfortably work with a laptop with between 512 MB and 1 GB of memory. With about 256 MB of virtual memory, the application is reasonably responsive to one or two concurrent users.
- For small scale deployments, a single CPU server with about 512 MB to 1 GB of memory should be sufficient as well. For example, demo.opensourcestrategies.com runs on a 2.0 GHz Pentium 4 server with 1.5 GB of RAM. It usually hosts about six simultaneous instances of the application, allocating between 128 MB to 256 MB per instance, and can support about six concurrent users comfortably.
- For ecommerce deployments, a dedicated dual-CPU Xeon server with 1 GB of RAM would work well for most sites. A dual-CPU Xeon server with 4 GB of RAM should accommodate about 200 - 300 concurrent users.
- For very small ecommerce sites and intra-office deployments, a Virtual Private Server (VPS) may offer acceptable performance if you have at least 256 MB of RAM, and preferrably 512 MB of RAM. Virtual Private Servers, however, use disk swapping to boost the amount of RAM available. Depending on how much of your RAM is actually RAM and how much is disk space, your application's performance could deteriorate significantly.
- It is not possible to deploy the application on shared hosting environments, such as those offered for $10 per month. While you technically do not need root access to run the application, shared hosting usually involves minimal memory allocated to each account and extensive disk swapping.
Larger deployments usually involve additional hardware, load-balancing or clustering, and separating static content servers (httpd), Java servers (Tomcat), and databases on separate and specialized hardware. While such large scale deployments can definitely done (we know of one with up to 10,000 concurrent users), they are beyond the scope of this article.