Page 23 - EngineerIT June 2022
P. 23
ICT
Microservices: The future of
software architecture
By Nick Durrant, co-founder and MD of Bluegrass Digital
icroservices architecture is a framework for future-proofing solutions when
developing applications so that they can easily be updated and adapted as
Ma business changes. A shift away from traditional development approaches,
which saw business developing entire applications as a singular monolithic structure,
microservices make it possible to split an application into a collection of loosely-coupled
services.
By separating different pieces of code in a way that they can run
independently but still “talk” to each other and work together,
you can create a complex application from the sum of different With microservices
microservices. In this way, the failure of one service will have less
of an impact on the functioning of the application as a whole. architecture, development is
With microservices architecture, development is more iterative more iterative.
so you can easily update and review the implemented functionality.
It’s also more flexible because individual microservices can be developed in them from adapting and making
the most appropriate programming language based on different functionality requirements. changes as and when they need to. Keen
This makes it possible to mix multiple languages and development frameworks. for others to enjoy the same benefits as
Developers can focus their attention on one particular module, or microservice, at a brands like Netflix, the Alliance wants
time and because each service is separate, availability is easier to maintain, even if one to enable businesses to take advantage
microservice goes down. of the most innovative and flexible
But before I get ahead of myself, it’s important to note that there’s nothing wrong with enterprise technologies available, such as
more traditional, monolithic architecture. This type of strategy is perfectly suited to some microservices.
applications and to certain business needs. At Bluegrass, we have always worked
If you’re developing a simple app with only a few features, if you’re working with a to employ modern, stable and secure
small team or if you’re creating a quick proof of concept, a monolithic approach is the way technologies. Today, we are using cloud
to go because everything is managed in one place; it’s simple and it’s stored in a single solutions across all our clients, and we
database. But it doesn’t work for everyone. are shifting away from relying on a single
large software platform, and embracing
Microservices in action microservices. Even more traditional
Some of the globe’s leading brands – think Netflix, Uber and Amazon – are major software platforms are embracing
advocates for this approach to software development. In fact, Netflix and Amazon were the trend with many now providing
among some of the earlier pioneers of microservices. “headless” options with open APIs.
Netflix was one of the first companies to successfully migrate from a traditional This means that you don’t need to
monolithic architecture to cloud-based microservices architecture after realising that the build your entire solution on top of the
former simply doesn’t work when you’re developing a highly complex application. platform, but rather create a modular
Netflix understood that a single issue could bring down its entire system. They were puzzle piece which can easily be replaced
also unable to store the massive amounts of data and user information in their current in the future without harming the overall
data centres, which motivated them to migrate to Amazon Web Service (AWS). So they solution architecture.
made the change. As I’ve outlined above, microservices
While moving to the cloud, the subscription streaming service and production architecture provides a more
company split its single, monolithic application into hundreds of smaller, more loosely componentised approach, enabling
coupled services. One service stores all watched shows, one is responsible for monthly businesses to eliminate their reliance
credit card payments and another analyses a user’s viewing history in order to suggest on a specific platform. Think of these
similar shows and movies, for example. In 2020, Netflix had around 1000 microservices connected blocks as being a bit like a
managing different parts of their site. puzzle. A single piece, or several pieces, of
This approach is also backed by the MACH Alliance, a group of independent tech the puzzle can easily be added, removed
companies advocating for more open technology ecosystems. Acknowledging that modern or improved seamlessly, giving you
technology has evolved and continues to evolve on a daily basis, the MACH Alliance wants longevity, agility and improving resilience
to help companies avoid locking themselves into a set of limited capabilities that prevent and scalability across your solutions. n
EngineerIT | June 2022 | 21