“Microservices” has become one of the hottest buzzwords of the past few years, and as with any game-changing new technology, there has certainly been no shortage of differing opinions around the topic. Some have been bullish about the adoption of microservices, calling them “SOA done right,” while naysayers claim that the idea is simply a rebranding of SOA. Despite both the hype and the skepticism, microservices have significant benefits, especially when it comes to enabling the agile development and delivery of complex applications.
Given the all the hype, where does the industry stand now with the adoption of microservices architectures?
Unlike many new technologies that face slower adoption due to skepticism and barriers to entry, microservices are already hitting primetime. Today, nearly 70% of organizations are either using or investigating microservices, and approximately a third are already using them in production (this according to new research by NGINX of its community of users).
(Related: How containers grow in the enterprise)
In today’s always-on society, what sets a great organization apart from the rest (or, more urgently, what separates winners from losers) is the ability to innovate, adapt, and build extraordinary new products and experiences faster than the competition. Business owners need to respond quickly to customer needs and competitive pressures to ensure that the services they offer remain relevant and attractive. This puts a large burden on the application developers to deliver innovation rapidly, reliably and in a reproducible manner. Any failure or downtime, and customers’ attention quickly turns elsewhere. As microservices adoption climbs, it’s time for organizations to adopt these new innovation tools or die trying.
Microservices seek to make adding features a fast and seamless process. A microservices architecture decomposes what would otherwise be a monstrous, monolithic application into a set of individual, independent services. While the total amount of functionality is unchanged, the application has been broken up into manageable chunks or services, making this rapid delivery possible.
A monolithic approach has limitations once an application reaches a certain level of complexity. A successful application will continue to grow as new features are added and updates are released. A huge monolith just doesn’t lend itself to an agile approach for development and delivery.
Many of today’s largest and fastest-growing organizations, like Netflix, Uber and Lyft, have already taken the plunge, whether by transitioning to microservices, or by adopting microservices out of the gate.