Sizing and infrastructure requirements

When planning your on premises deployment, it's important to size your instances correctly. This document contains general guidance; if you have any questions, please contact us and our team will be happy to assist.

Application Instances

Polytomic runs as 3 different roles: the web interface, sync workers, and general workers. The same instances can fulfill multiple roles, but you can achieve higher throughput by deploying separate instances for each.

RoleMinimum CPUMinimum RAMRecommended Instances
web1 VCPU1 Gi2
worker1 VCPU1 Gi1
sync1 VCPU2 Gi2

Utilization for web and worker roles are approximately fixed. The sync role, however, can be sized based on expected sync volume. The sync volume is the number of records synced in a single execution.

Sync VolumeRecommended CPURecommended RAM
< 10k1 VCPU2 Gi
< 100k1 VCPU4 Gi
< 1MM2 VCPU6 Gi
> 1MM2 VCPU10 Gi

PostgreSQL

We recommend a v11 or later PostgreSQL instance with at least 2 GB of memory, 2vCPUs, and 40GB of storage. Your database needs will depend heavily on sync volume.

If it’s on AWS or another managed platform that is easy to resize, getting the sizing correct is less important out of the box. However, if you’re rolling your own hardware or the instance is more difficult to upgrade, you may want to over-provision.

Redis

Redis powers core functions of Polytomic. Please provision an instance (or cluster) with at least 12Gb of storage. Replication is desirable but not critical.

If you setting up alerts/monitoring on the instance: CPU consumption and number of keys evicted are useful metrics to know if the cluster is behaving healthily.

If it’s on AWS or another managed platform that is easy to resize, getting the sizing correct is less important out of the box. However, if you’re rolling your own hardware or the instance is more difficult to upgrade, you may want to over-provision.

Blob Storage

Polytomic requires network-connected storage in order to function correctly. We currently support four options for network connected storage:

  • AWS S3
  • Google Cloud Storage
  • Azure Blob Storage
  • NFS mounts

If using S3/Google Cloud/Azure, please grant Polytomic full access to its own bucket.