Skip to content

Sizing and Performance

Abuse Shield Sizing

Memory

The wforce daemon maintains several in-memory caches to store the statistics used for the policy engine. In the default configuration, each cache (there are two; one for per-hour stats, and the other for per-day stats, although only the per-hour cache is heavily used) has a maximum size of 500,000 entries. Each subscriber and each unique IP will create a new entry in the cache. Each cache entry can vary between 2-5KB in size (depending on the types of fields used and the number of windows). Therefore, with the default maximum size, the maximum memory usage of the wforce daemon is between 1 - 2.5GB. Depending on the number of subscribers and IPs you have connecting to your applications, you may need to increase the maximum size of the cache, and thus also the amount of RAM available to the wforce daemon. Some customers running very large mail installations are allocating 32GB or 64GB to wforce, with a maximum cache size of millions of entries.

CPU

wforce is a multi-threaded daemon, and so will use multiple CPU cores to process requests. The default configuration uses 4 CPU cores, but this is configurable. Unless you are performing a lot of network lookups within wforce policy, the performance profile is typically CPU-bound, not I/O-bound. Four cores will be able to handle around 5-6K logins per second, with vertical scaling and horizontal scaling available to handle higher loads.

Adding multiple cluster nodes (i.e. horizontal scaling) will increase capacity, but not linearly, as the replication overhead slightly decreases the performance of each node. A four-node cluster is typically the maximum cluster size, with vertical scaling used to achieve higher performance levels (vertical scaling is linear in nature).