A Deep Dive On Monolith Platforms vs. Ecommerce Microservices vs. Headless Commerce
A Deep Dive On Monolith Platforms vs. Ecommerce Microservices vs. Headless Commerce
Get The Print Version
Tired of scrolling? Download a PDF version for easier offline reading and sharing with coworkers.
These days, it’s hard to spend too much time reading about ecommerce trends without stumbling on an article on microservice ecommerce.
In fact, many businesses are leaving behind monolithic applications in favor of microservices. A study by LightStep found that 92% of the 353 senior development stakeholders surveyed saw an increase in adoption of microservices in their organizations in the past year — and they expected to see that trend continuing in the next year.
But what exactly does microservice architecture mean and how is it influencing ecommerce? You often see microservice contrasted with its opposite: the monolithic architecture. How is microservices different from a monolith and why are many brands moving in a microservices direction?
A microservices architecture is a set of loosely coupled services that collaborate to create a system. Microservices operate on inherently distributed systems that connect through API gateways.
This chart shows the basic structure of a monolith which contains all the elements of the ecommerce system. Here, it’s compared to a traditional SaaS (software-as-a-service) offering that integrates with third party systems, as well as a microservices architectural style that decouples services and connects them via APIs.
Many large scale sites like Netflix and Spotify have moved from monolith to microservices systems. By doing so, they can adapt to new innovations more quickly and choose best-in-breed solutions. Because the parts of the system–or microservices–operate independently, changes can be made more rapidly leading to a faster time to market for updates and more agile integrations.
In this deep dive, we’ll look at what microservices architecture is, how it has evolved from monoliths, what headless commerce is and how it compares, and things to consider before making a switch.
Traditional Digital Commerce
To illustrate why microservices are taking the reins after decades of dependency on monoliths, let’s go way back to the beginning of human history. Long before there was ecommerce or software or even money, there was simply mankind trying to get by on some good old-fashioned hunting and gathering.
Hunter-gather bands were self-sufficient, self-contained systems. Everyone knew everything and could decently do most tasks required for survival.
Even after the Agricultural Revolution, humans lived in small, intimate communities where they could still manage to get by with economies of barter and reciprocity.
Then life got a lot more complicated.
The rise of cities and improved transport brought new opportunities for specialization. People could no longer know everything, so they started to master specific tasks. And so shoemakers, potters, bakers, and doctors were born.
In many ways, we can see parallels in the evolution of microservices architecture from monoliths.
Until recently, most ecommerce platforms were supported by monolith architectures. These are the original self-sufficient, self-hosted, jack-of-all-trades systems. They provide businesses a centralized, on-premise, feature-rich system to meet their needs. However, as a business gets more complex, these systems can often be slow and difficult to scale.
Microservice architecture offers a decentralized, decoupled approach. Instead of one solution that does everything, it separates different business requirements into different services which then communicate with each other.
This means even as the business and its needs grow more complex, microservices can offer speed and flexibility.
Just as early humans discovered they could get better resources and services if they traded (and later paid) for them from specialists, microservices offer businesses a chance to combine the best individual services to suit their business.
The result is an agile platform that can encapsulate all the business requirements but also quickly innovate with changing market demands.
Issues with Monolith Models
As explained above, two decades ago, monolith architectures were the only option for ecommerce businesses. Enterprises had no choice but to build on and constantly update and maintain these increasingly complicated structures.
In some ways, a monolith would seem to be simpler. All of the necessary components are contained in a single system. However, as time goes on, many brands have experienced challenges and issues with these all-in-one structures.
1. Customizations lead to complications.
Monolith platforms by definition work with a tightly-coupled frontend and backend system. In order to update them to create personalizations or customizations, developers have to alter the underlying database code and the front-end platform. This can be very time-intensive. It can also make the system more and more complicated over time, especially with increased business capabilities and different development teams working on the system over the years.
2. Response to new market trends is slow.
Customers are expecting more and more from their ecommerce shopping experiences. Brands need to be nimble in order to quickly implement changes and meet new trends and expectations.
Because a monolith platform can be slower and more complicated to update, it can slow the DevOps cycle and make it harder for the brand to make swift updates.
3. High dependency leads to a single point of failure.
Monolith platforms are fragile. Because the parts are coupled together and dependent on each other, when one piece of the puzzle doesn’t fit, it can bring down the entire system.
4. Updates need a lot of testing before going live.
Because of the potential for a simple change bringing down the system, all updates need to be carefully tested. This requires more manpower and time to undergo all of the testing necessary to make sure nothing goes wrong.
One version of a microservices approach is headless commerce. Headless commerce entails decoupling the front-end presentation layer from the backend ecommerce engine.
The frontend or the ‘head’ of most ecommerce websites is the theme or template that controls what customers see. Headless allows for more flexibility in content delivery because you can connect a content management system (CMS) or digital experience platform (DXP) or Internet of Things device (IoT) that is specifically designed for creating content- or experience-led commerce. You can then swap out the front-end without affecting the backend operations.
Your chosen frontend communicates to the backend ecommerce through simple API calls.
Customer expectations are rising. They want fast shipping options, secure handling of their data, and unique digital experiences. They are also shopping more omni-channel than ever and want to see their experiences online reflected offline and vice versa. Headless and microservices can help address these expectations.
As Adam Grohs, the co-founder of the digital innovation agency Particular, posts: “The next generation of commerce platforms will whole-heartedly embrace microservices, headless and event-driven architecture as ecommerce for brands is no longer about a destination. Monetizable events and experiences will be more of the norm than an ecommerce website as a destination.”
Headless enables enterprises to be nimble and to innovate because they can make changes to their frontend faster without compromising essential ecommerce components like their checkout and security.
For more about headless commerce and the reasons brands are embracing it, check out this in depth article.
How Is Headless Different from Microservice Architecture?
With headless, some of the parts of the system are decoupled (the frontend from the backend). However, a true microservices architecture allows the platform and service-oriented architecture to be fully decoupled.
With both decoupled and headless platforms, the content management application and content delivery application environments are separated. In a decoupled environment, however, the content is actively pushed into the delivery environment. A headless CMS, on the other hand, sits idly in a reactive state until a request is sent for content.
A headless CMS is comprised of content creation and editorial tools, and it has an API that is made available to third-party applications that publish its content. By contrast, a decoupled CMS is more proactive, as it has all the features of a headless CMS and also templating tools. It not only covers the preparation of content but also pushes it into a delivery environment.
Reasons for the Move to Microservices and Headless
Given the issues with a monolith system mentioned above, it’s no wonder that enterprise brands began to look for new solutions. To quickly respond to customers’ needs and market trends, a microservices architecture provides a flexible foundation.
Using loosely coupled microservice components to create the complete system has a number of advantages for both developers and end users.
1. Heavy frontend traffic does not affect the backend.
One distinct advantage of having a microservice architecture is that the frontend and backend can be individually scaled. Developers can extend services where they are needed without needing the whole system to adjust. This means high traffic on the frontend won’t impact backend operations.
2. Increased opportunities for customization and personalization.
With a headless system, you can have multiple frontends that connect to one backend system. This presents opportunities to implement multiple new touchpoints to the frontend.
3. Tech stack enables rapid implementation.
Because microservices or headless systems have a decentralized development process, it’s easier for developers from different teams to collaborate to adjust the code base and get to market faster.
4. Get only what you need.
A monolith is a feature-rich, all-in-one system, but you may end up paying for and working around features and functionality your business doesn’t require. With a microservices approach, each microservice serves a business function. You can add only what you actually will use to your system, creating a leaner and more efficient technology stack.
5. Get best-in-breed solutions.
Instead of relying on one system to try to do everything, you can pick and choose the services and service providers that will specialize in exactly what you need. Having a vendor-agnostic approach will allow you to really hone in on services that match your exact business needs.
BigCommerce allows for the flexibility of microservices, but at a more affordable price point.
Potential Disadvantages of Microservices vs. Headless Commerce
There are clearly a number of advantages to a microservices architecture, which explains why so many businesses are moving in that direction. However, what are some of the potential roadblocks and challenges you will need to take into consideration?
1. It will require organizational changes.
Switching to a microservices architecture doesn’t just require a change to how your ecommerce platform is organized. It can cause a change to your whole organizational structure. Managing the different microservices requires cross-functional, vertical teams who can work together to develop and maintain the site. Headless doesn’t necessarily require these same changes. You can usually keep many of your same systems and connect them to an ecommerce engine like BigCommerce.
2. It may require infrastructure changes.
Another potential consideration of switching to a microservice system is that it might change the infrastructure and tools you need to monitor the different microservices. Be aware of what changes will be required and factor those into your total cost of ownership. This again is why headless may be preferable, as you can get the advantages of flexibility with fewer changes to your existing systems.
3. Fully decoupled microservices can be costly.
Depending on your budget, the cost of a fully decoupled microservices system may be a deterrent. Tools like Elastic Path and commercetools offer fully decoupled microservices architecture, but they can also be incredibly expensive. This is one reason brands may consider a headless solution through BigCommerce as an alternative.
Businesses Choosing Headless Commerce Over Microservices
Here are a few businesses that are seeing the advantages of a headless, API-driven approach to their ecommerce.
FireWire Surfboards has been an innovator in creating and selling eco-friendly surfboards while connecting to customers in offline experiences at that California Surf Ranch.
They used a WordPress CMS for their frontend and connected it through a simple plugin to the BigCommerce platform for scalable, secure ecommerce on the backend. The WordPress environment allows FireWire to create a content + commerce experience for customers without treading ecommerce as an afterthought.
Carluccio’s Italian restaurant and specialty food provider is another example of a business built using the BigCommerce for WordPress plugin to create a headless solution.
By building their presentation layer on WordPress, they’re able to create a consistent buyer journey from product page through checkout.
Zwift is an at-home training app for connecting cyclists around the world. Zwift worked with the The ZaneRay Group to develop a webstore on BigCommerce, integrating a Prismic headless CMS with the interface programmed in React as a Progressive Web Application.
This setup allows Zwift to integrate all of their systems without having to reprogram their site and provides them with an online web store that will grow with their business.
Moving from a Monolith to Microservices Architecture or Headless Solution
There are a number of reasons you might want to move from a monolith to a microservices or headless architecture.
Perhaps you are finding limitations with your current system and making and testing changes is becoming too slow a process. You’d like a system that breaks your system into smaller, self-sufficient sections that are easier to test and deploy.
Another reason you may be considering a move is because your current system requires an upgrade or is being phased out. For example, if you are a Magento 1 customer, you may be planning a switch due to the sunsetting of the product in 2020.
Brands considering a switch from a monolith to a microservices system may be wary of what it takes to replatform. However, there is good news!
Unlike switching from one monolith to another, switching from a monolith to a microservices or headless platform can be done incrementally.
As Shane Baker, Digital Strategist and Brand Influencer Consultant at Shane Barker Consulting, explains: “It’s super easy to adopt a microservices approach because you can do it gradually. You don’t have to prepare for a big and instant change that could disrupt your operations. It’s very easy to scale the most crucial services and functions without the need to scale the whole application.”
With an incremental approach, you can first decide which capabilities to decouple and when to slowly separate your entire monolith into a system of microservices. You can start transitioning to your new platform, while you’re still building out the rest of the parts.
Through a method known as the strangler pattern, you essentially break the monolith into single service components and replace them with microservices piece by piece.
Two decades ago a monolith system was the only option for large brands to build their ecommerce presence on. However, monolithic platforms can restrict the fast-moving innovation that modern retail requires.
An API-driven, microservices approach can be a powerful way to increase flexibility and enable better customer experiences. It allows developer teams to cleanly offer continuous delivery while making updates.
Likewise headless commerce allows for many of the advantages of microservices, without some of the disadvantages.
If you are considering a switch from a monolith to a microservices architecture or headless commerce, do your research to determine how utilizing best-in-breed solutions in a decentralized system could impact your total cost of ownership, the speed of your operations, and your ability to offer the best possible experience for your customers.
Want more insights like this?
We’re on a mission to provide businesses like yours marketing and sales tips, tricks and industry leading knowledge to build the next house-hold name brand. Don’t miss a post. Sign up for our weekly newsletter.
Less Development. More Marketing.
Let us future-proof your backend. You focus on building your brand.
A New Era of Ecommerce: Headless Commerce
Download our whitepaper to get a headless commerce overview + checklist.