Behind all the church services happening across the world each Sunday are thousands of people quietly working to make sure the day goes smoothly. Their unglamorous work tends to go unnoticed, but without them your chairs wouldn’t be set up, the hallway would be dirty, and the pastor’s mic wouldn’t be turned on.
Typically on our blog we like to talk about the new, exciting features and major updates to our applications. But today we're going to share with you some of the less glamorous work our teams do to help your weekends go off without a hitch.
For the first ten years of Planning Center, we owned and maintained physical servers in data centers across the United States. As traffic on our servers increased, we'd buy more servers, which took weeks to be installed. While this approach worked for the first decade of Planning Center, we realized it couldn’t keep up with the growing number of churches relying on us every weekend.
Two years ago we began making major investments into our infrastructure and the team running it. As the size of our platform team increased from just one to four people, they began the project to move all of our application, database, background, and other supporting servers to Amazon Web Services (AWS)—the leading cloud-based computing services provider in the world. Besides being extremely reliable, AWS gives us the power to employ as many servers as we need, on demand.
In a process called auto-scaling, our server load is monitored by software that automatically launches new servers when a high load is detected, and then shuts them down once they are no longer needed. Auto-scaling is particularly valuable for Check-Ins, since it is used primarily on Sunday mornings and stays relatively quiet the rest of the week.
This graph shows the number of web servers running Check-Ins on Easter Sunday 2018 (time is in UTC). We started with just 3 servers, worked our way all the way up to 57, then slowly start tapering back down as traffic decreases. Since we only pay for the servers that are running, auto-scaling allows us to make Check-Ins much more affordable.
In the two years since we switched to AWS, the number of children checked in on a Sunday morning has more than tripled — an amount of traffic that would have been near impossible for a team our size to scale using physical servers.
In addition to consistent, capable infrastructure, we generally don’t deploy new code to our production servers after Thursday each week to make sure we have time to squash any bugs well before your weekend services. We rarely experience widespread issues on the weekends, but if and when we do, we're ready to provide help.
Our support team is available Monday-Friday, 8-5pm, and Sundays from 5am-2pm Pacific time. They are here to answer your questions and keep an eye out for any trending problems. In the rare cases when they do spot an issue, they have direct access to our developers who share an on-call rotation and are ready to address any issues at a moment’s notice. In the event of a widespread problem, we provide up-to-the-minute information via our status page and PCO Status Twitter.
Just like the people working behind the scenes at your church each weekend, we’re here because we believe in your ministry and want you to succeed. As your church grows and changes, we’ll be here, ready to help.