Sizing & 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.

Role

Minimum CPU

Minimum RAM

Recommended Instances

web

1 VCPU

1 Gi

2

worker

1 VCPU

1 Gi

1

sync

1 VCPU

2 Gi

2

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 Volume

Recommended CPU

Recommended RAM

< 10k

1 VCPU

2 Gi

< 100k

1 VCPU

4 Gi

< 1MM

2 VCPU

6 Gi

1MM

2 VCPU

10 Gi

Postgres

We recommend a v11 or later Postgres 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 many 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.