One server in Frankfurt
The service runs in AWS's Frankfurt region. The application runs on one server, and the database and the cache that holds the job queues are separate managed services in the same region. Nothing runs in a second region. If the application server goes down, the service is down until it is back.
Cloudflare in front
Every request reaches Cloudflare first. It handles the encrypted connection, blocks attacks and limits repeated attempts, then passes the request to our server through a tunnel the server opens itself, so the server has no open port facing the internet. The application runs in Frankfurt, so someone far from it may notice the distance. From elsewhere we load a typeface, the Paddle checkout on the payment pages and, where it is switched on, the Cloudflare bot check on the sign-in and sign-up forms.
Backups
The database keeps automatic backups for 35 days, and a copy of them is kept in AWS's Ireland region. The server's disk is copied every day, and each copy goes to Ireland as well. Before every update an encrypted copy of the database is taken and kept for 30 days.
There is no formal, documented schedule for testing a recovery, as our data processing agreement says.
When something breaks
We fix it by hand. A check every five minutes alerts us when the schedule stops or a release is stuck. Nothing promises how fast the fix comes, so we publish no availability figure, and you should not assume one.