Your browser does not support JavaScript!
This is an image for the page banner
What Server Hardware is recommended for FirstClass 10.0?

This provides hardware guidelines for separate Core Server and Internet Services installations. It also includes a hardware recommendation for small sites who wish to run both applications on one physical machine.


FirstClass 10.0 Core Server Hardware Requirements

The FirstClass 10 core server makes significantly more use of both memory and processors than 9.x and earlier servers.  The largest user of this by far is the new index searching found in 10.0, but other core features are also making more use of memory and processors.  Operating system differences are no longer so significant in comparison, so hardware requirements are fairly consistent across all OS platforms.

Quick Summary
As you will see below, the increased core server requirements in FirstClass 10.0 are not only for high-capacity sites, but are mostly driven by the size of the FCNS content size.  However, larger sites under significant load should choose to make use of an 8-processor configuration.

Minimum Hardware Requirements (suitable for smaller installations with small FCNS content):
  • dual-processor 64-bit (2 CPUs, in any configuration, e.g. a single dual-core)
  • 4GB RAM (smaller FCNS content stores, up to 250GB)
Typical Hardware Requirements (most sites):
  • quad-processor 64-bit (4 CPUs, in any configuration) or more
  • 4GB RAM (sites with FCNS not exceeding 250GB content store, more would be even better)
  • 8GB RAM (sites with FCNS exceeding 250GB content store, more would be even better)
Recommended Hardware, Especially for Larger Sites
  • 8 processors (64-bit) or more (in any configuration)
  • 16GB RAM or more (depending on the size of the FCNS)
Operating Systems Supported (Tested)
  • Windows:                Windows Server 2003 x64, Windows Server 2003 R2 x64, Windows Server 2008 x64, Windows Server 2008 Enterprise x64
  • Mac OS X:               OS X (64-bit Intel) 10.5.4 'Server' / OS X (64-bit Intel) 10.5.7 'Desktop'
  • Linux:                  Fedora 8 (64-bit) - Kernel 2.6.23.1-42.fc8
Requirements Details

1. All FirstClass 10 servers will require a processor that supports 64-bit operations, as well as a corresponding 64-bit operating system.
Both 64-bit Intel and AMD64 processors are supported.  Sites running a 32-bit operating system will need to upgrade their OS to the 64-bit variants to run the core server.

2. FirstClass 10 open file caching may increase memory usage by as much as 160MB.
Most active sites will see an increase of memory, probably in the range of 100-160MB as a result of this.

3. Caching of the permissions tree for fast searching will require about 200 bytes per FirstClass container link.
On the FirstClass Online core server for firstclass.com, we see an average of approximately 1.6 subcontainers per container.  Given the 200 bytes above, this means that a site with 100,000 containers would require approximately 32MB more memory for the permissions tree cache.  A more accurate estimate of the increase caused by this one change for a specific site might be to examine the file size of the volume.fid file at that site and triple it.

4. The FirstClass 10.0 search functionality uses an index that is directly proportional to the FCNS content size, but the proportion varies based on the usage pattern at each site.
A "small store / highly indexed" site, such as a small book publisher's server (with lots of unique words in the search index dictionary) may have a larger index size compared to the content store size, as compared to a "large store / lightly indexed" site that is mostly non-indexed binary files (like photos, MP3s, or movies).  As an example, the FCNS content on the firstclass.com core server has a large amount of collaboration and discussion, therefore large number of text messages and is probably more towards the "highly indexed" side of things.  The index there is about 2.1 GB from a store of approximately 500GB FCNS data.  That is, the index is approximately 0.42% of the size of that content store.

5. Memory requirements are no longer based mostly on network concurrency levels, but rather the size of the network store.
Because of point 4 above, the largest memory consumer in a FirstClass 10 server is the in-memory index, which is directly proportional to the network store.  A former "light use" site like the firstclass.com core server -- which has traditionally had no more than 100 concurrent logins -- may now find itself as one of the larger memory users, due to the storage of more than 15 years of user content in the FCNS.

6. The FirstClass 10.0 search functionality loads the search index in memory, along with calculating a second "reverse index" and additional support allocations.
This means that the index above is loaded at server start time, and a second reverse index is built, requiring the index to be stored twice in memory.  When combined with additional overhead, that 2.1GB index will probably require about 6-7GB of memory.  When calculating in-memory requirements due to indexing, the "safe" conservative estimate would be to start with the size of the index on disk and multiply it by approximately 2.5.  Combining the information so far, the estimated memory use for the index would be in the order of 1.0% of the size of the FCNS content.  After some other overhead, this results in the 4GB requirement for stores up to 250GB.  As in all of these cases, additional memory may improve performance in other areas, reduce memory swapping, and improve things like server and file system caching.

7. The FirstClass Archive Server does not use an index for searching.
Since there is no index, an Archive server does not include this significant new requirement.  The other increased memory needs still apply, but due to the low concurrency (typically 1 user) of an archive server, we do not anticipate any new needs there, except for the first two points above.

8. Other "server" components, such as Internet Services and Voice Services, are not specified here.
The above covers only the core server requirements, not those of the other services such as IS or VS.  The core server requirements are listed separately here, due to the significantly increased core server requirements in this release.

FirstClass 10.0 Internet Services Hardware Requirements

FirstClass 10 Internet Services makes more use of both memory and processors than 9.x and earlier versions. In addition to the existing requirements for RAM, enhanced caching mechanisms in FirstClass 10.0 require additional memory. Platform-wise, Internet Services now requires 64-bit hardware and a 64-bit Operating system.

Quick Summary
Internet Services hardware requirements in FirstClass 10.0 are are determined based on a number of factors, including base software requirements, resources used by the cluster, the number of IS sessions configured and caching requirements. In general, larger sites making more extensive use of HTTP will require larger amounts of RAM.

Minimum Hardware Requirements (suitable for smaller installations):
  • dual-processor 64-bit (2 CPUs, in any configuration, e.g. a single dual-core)
  • 4GB RAM
Typical Hardware Requirements (most sites):
  • quad-processor 64-bit (4 CPUs, in any configuration) or more
  • 8GB RAM (sites with high HTTP utilization will benefit from more - see the calculator below)
Recommended Hardware (large sites using multiple IS clusters)
  • 8 processors (64-bit) or more (in any configuration)
  • 16GB RAM or more (sites with very large numbers of IS sessions configured could benefit from more - see the calculator below)
Operating Systems Supported (Tested)
  • Windows:                Windows Server 2003 x64, Windows Server 2003 R2 x64, Windows Server 2008 x64, Windows Server 2008 Enterprise x64
  • Mac OS X:               OS X (64-bit Intel) 10.5.4 'Server' / OS X (64-bit Intel) 10.5.7 'Desktop'
  • Linux:                  Fedora 8 (64-bit) - Kernel 2.6.23.1-42.fc8
Calculating Memory Requirements

To determine how much memory to provision on top of server OS requirements, please use the following guideline:
  • Allow 128Mb as a base requirement (includes basic overhead for all the protocols, config files, 1 language worth of resources)
  • Add the size of any extra resources installed (ie add up all the additional .rez files, icons.rez files, 'x' resources equivalents etc from the Resource Registry folder...).  As a rough estimate, allow 1-3 Mb for each extra language and/or web site custom resource set.
  • If the cluster has HTTP enabled, add 6Mb for each IS session configured on the Basic Internet Setup form.  If the cluster does not have HTTP enabled, reduce this to 3Mb for each IS session.
  • If the cluster has HTTP enabled, allow 1Mb of HTTP cache data for the first 1000 web-enabled accounts on the system, then 256k for each web-enabled account after that, up to a maximum of 4x the session allocation.
An Example:
For an HTTP-enabled IS cluster connected to a to a server with 9,000 user accounts and configured for 300 internet sessions, with Swedish and Danish resources in addition to English, the recommended RAM requirement would be:

128 Mb (base) + 4 Mb (2 extra language resource files @ 2 Mb apiece) + 1800 Mb (300 internet sessions @ 6Mb apiece) + 5000Mb (cache allowance of 1Mb x 1000 + 256k x 8000 for the users on the system) = 6932 Mb =~ 7Gb

NOTES

  • These memory requirements are, of course, in addition to the requirements for whatever else may be running on the system (most notably the OS) so the end result should also take into account the OS and other utility requirements.
  • These numbers are very approximate, they are intended as a guideline rather than a hard and fast rule.  The session memory allowance is more important than the cache memory allowance: IS can run (albeit with reduced performance) with less than optimal cache space, but inadequate session memory will have a functional impact (ie operations will start failing with 'out of memory' errors).
  • The session memory allowance is based on an assumption of users opening 2x1000 item communities/conferences/calendars, 1x250 item mailbox and 2x100 item profiles, plus sundry less memory intensive objects.  Initially, on a fresh install, this will probably be more memory than the system will need (since a new install won't contain 1000 item conferences).  On the other hand FCOL has some high-use conferences with > 12000 items, which would require up to 18Mb of memory to open.  Mature systems with lots of large conferences may wish to consider archiving high-use conferences/communities to keep the item count (and hence memory usage) down, or they may need to allow for more memory per session.  Future functionality could utilize additional memory, so provisioning memory beyond the minimum requirements is a good practice.
  • For a system with very large numbers of users, relatively large proportions of unauthenticated file transfers or heavy uploaded file usage, it may be advantageous to set the "Maximum cache memory percent" setting on the Advanced Web & File form to something higher than its 25% default.  If this is done, the admin should ensure that the remaining percentage of memory is adequate to supply the other minimum allowances (ie base + resources + sessions).
  • Cache usage is very hard to estimate, the numbers given are based on an analysis of limited available data. As a practical matter, the best way of calculating the cache requirement for a system is probably empirical: Admins should check the IS monitor from time to time to see if the cache is maxed out, and if so they may need to add more memory or increase the cache max memory percentage.
FirstClass 10.0 Single Server Hardware Requirements (Core Server and IS on one physical machine)

This hardware specification is recommended for small sites only. Although there is no "official" specification for a small site, the following criteria provide a reasonable guideline:
1.      Less than 1,000 total active accounts
2.      Peak concurrency under 250
3.      Network Store of less than 200GB

Recommended Hardware
  • 8 64-bit processors (two quad-core processors, for example)
  • 16GB RAM or more (follow the IS memory calculation guideline, above)

(c) Aptiris, Inc. 1998-2017