Stay Up and Running With Microservices

Microservices Associations Now Fall 2019 Issue By: Tim Ebner

The microservices approach lets you direct server resources where they’re needed most, so that your websites and apps run smoothly even during periods of high demand.

Some complicated things are better understood as a series of smaller parts. That’s the thinking behind a technology framework known as microservices, which develops and maintains applications as collections of small components rather than big, complex monoliths. And for the League of Women Voters (LWV), that approach solved a persistent problem with one of its key offerings—its voter information website, vote411.org.

With microservices, organizations can restructure apps or websites, directing server resources where they’re needed most, especially to areas prone to occasional overload. That described the vote411 site, which has been around for more than a decade and was susceptible to spikes in traffic volume.

“People come to the site all the time for voter registration and polling place information, and while on any given day, we might see 2,000 or 3,000 visits, on [dates close to election day] that traffic can scale to millions,” says Jason Johnson, director of information technology at LWV. “It was enough volume to potentially crash the site.”

Before applying the microservices framework, Johnson had to buy and manually set up servers to meet demand—a process that was time-consuming and expensive.

“Under our new site architecture, we can independently scale different apps,” he explains. “We’re essentially slicing out certain functionalities of the site to maximize its performance and make it scalable.”

Without the microservices structure, our site went down, and we lost an opportunity to serve the public.
—Jason Johnson, League of Women Voters

Johnson says the microservices approach works particularly well for small-staff organizations with limited resources. “If you have a legacy IT system that’s core to your business, you want to look at where there are pain points in performance,” he says. “Then, using microservices, you can partition off and focus on those pain points.”

The biggest traffic pain point for vote411.org was its personalized voting information service, an application that gives detailed information on where to vote, voter registration status, local candidates, and more.

A few days before the 2018 midterm elections, the feature got a prominent shoutout on HBO’s comedy news show, Last Week Tonight With John Oliver, Johnson says. “It was close to midnight on a Sunday when we didn’t expect the traffic. Without the microservices structure, our site went down, and we lost an opportunity to serve the public,” he says.

To ensure your site is flexible enough to meet unexpected surges in demand, he says it helps to identify an open-source system and an IT partner that can automate processes like server space allocation. Johnson is using Kubernetes, which has built-in tools to reconfigure and scale specific applications, like the personalized voting information service.

“It’s a container-orchestration system, which means you can independently manage and contain different sets of code and distribute traffic volume across several servers,” Johnsons says.

That equals a savings of staff time and resources over time.

“In the old days, you just kept buying servers to manually spin up and meet traffic spikes,” he says. “With microservices, organizations of all sizes can now reconfigure systems and meet demand.”

Tim Ebner

Tim Ebner is communications director and press secretary at the American Forest & Paper Association in Washington, DC. He is a member of ASAE’s Communication Professionals Advisory Council and a former Associations Now senior editor.