Server Specs

A minimal "development" setup (e.g. for a staging or a QA environment) is:

  1. A single PowerSync "compute" instance (API + replication) with 512MB memory, 1 vCPU

  2. A single MongoDB node in replica set mode, 2GB memory, 1 vCPU. M10+ when using Atlas.

  3. Load balancer for TLS

This setup has no redundancy. If the replica set fails, you may need to recreate it from scratch which will re-sync all clients.

For production, we recommend running a high-availability setup:

  1. 1x PowerSync replication instance, 1GB memory, 1 vCPU

  2. 2+ PowerSync API instances, 1GB memory each, 1vCPU each.

  3. A 3-node MongoDB replica set, 2+GB memory each. Refer to the MongoDB documentation for deployment requirements. M10+ when using Atlas.

  4. A load balancer with redundancy.

For scaling up, add 1x PowerSync API instance per 100 connections. The MongoDB replica set should be scaled based on CPU and memory usage.

These numbers are a basic starting point. Depending on the application load, it could be scaled up or down.

Memory usage is primarily driven by row size and concurrent connections (syncing 100x 10MB rows will use a lot more memory than 1000x 1MB rows).

Last updated