Growing Bigger and Smaller with Microservices
Vishwas Anand
World Record Holder | Award-Winning Marketing Thought Leader | Top 25 Innovators across the Asia-Pacific - The Holmes Report | Forbes Author | BW 40 under 40
There is an era of abstraction that leans over a legacy for something bigger and smaller- Microservices.
As digital architectures are built along with legacy systems for two-speed IT, clouds of interconnected applications begin to expand into the design of the organization’s communication structure much to Conway’s pleasure. The companies that don’t fit in would carefully decode the monolith and reconstruct their mission into contracts of independent business functionalities. Microservices were thus born and would be allowed to die a silent transitory death without being a martyr to the cause of organizational constraints.
IT infrastructure has seen a multi-dimensional metamorphosis over the years and has now achieved a new standard of abstraction with cell divisions being universally adopted. Google, Facebook and Amazon have embraced this for over a decade.
<Image Source- Wall Street Journal>
The transformation is a clear reflection of the dynamic business needs that are to be addressed:
- How do we build modern software architectural frameworks for improved agility?
- How do we operate and scale services for global customer reach sans local deployment?
- How would greater resource utilization be brought about for reduced costs?
Modernizing Software Architecture with Microservices
IDC estimates that at any point of time, enterprises are actively evolving only 25% of their application portfolio. The primary focus of organizations should be the adaptability to light-weight infrastructure to augment agility within the enterprise.
It all boils down to being able to develop a working prototype with reasonable success and iterate the process to meet future business demand. This is a reflection of the core Lean Startup methodology: Build-Measure-Learn feedback loop. Monolithic applications cannot follow this approach as the tightly coupled design brings with it inflexibilities and the difficulty of staying agile. Microservices offset the disadvantages by the business scenario approach of independent decoupled services and standard interoperability service contracts.
Applications are gaining autonomy with the three building blocks: Containers, APIs and Flexible Cloud Infrastructure. The standardized frame of containers for services brings in huge relief when abstruse integrations in heterogeneous environments were the order of the day. APIs have made communications more standardized while the cloud infrastructure helps deliver services to scale for operational efficiencies. It smacks of SOA and its principles of heterogeneity, distribution, modularity.
While people might call microservices ‘SOA done right’, there are inherent differences between SOA and microservices with the latter requiring no technology lock-in thus boosting innovation among flexible architectures and independent lifecycles that can evolve to meet rising business demand.
The diagram shows 4 microservices with possibly different inner architectures deployed and working in tandem with the outer architecture. Data persistence and logic are integral to the Microservice fabric.
Attributes of Microservices
Every transformation comes with its own set of hurdles and microservices are no different. Fittingly, Diligence must be in place so that developers are not creating duplicate services. Quality is another important aspect so that the consistencies of performance are maintained. Access for smooth integration and information exchange across services is also paramount.
Evolution of Microservices
<Image Source- Gartner>
Danny Brian, Research VP from Gartner spoke about the stages of Technology Evolution. When it’s applied to Microservices, every stage seeks to reinforce eventual democratization. Decoupled services are a prerequisite for distribution that Microservices enable through scalability and resilience.
Just as Netflix, Amazon and eBay have taken to microservices to deliver streamline software development other enterprises are following suit to embrace this new culture of abstraction. The failure of the SOA Movement teaches us to be prepared for technology obsolescence with business harmony the only goal to live by. Microservices leave a lasting impression of patterns and principles to weave the narrative of digital transformation into the fabric of the enterprise.
The only real question enterprises need to ask themselves is: Would we fare better without the monolith?
About the Author
Vishwas Anand is currently working as a Sr. Consultant, Thought Leadership at Aspire Systems, a mid-tier IT services provider and is a co-creator of Aspire's Digital Transformation framework. He is an MBA student (2012-14) from IIM-Kozhikode and a published poet and writer, having written for the digital section of The Washington Times, Copperfield Review, Aquillrelle among other publications.