Welcome!

SYS-CON.TV Authors: Liz McMillan, Elizabeth White, Pat Romanski

Related Topics: @DevOpsSummit, Microservices Expo, @CloudExpo

@DevOpsSummit: Blog Post

Embracing #Microservices | @DevOpsSummit #Serverless #DevOps #CloudNative

Thankfully, today we have microservices, which are revolutionizing application design and development for enterprise IT

Evolving Past Service-Oriented Architecture and Embracing Microservices

For DevOps teams, the concepts behind service-oriented architecture (SOA) are nothing new. A style of software design initially made popular in the 1990s, SOA was an alternative to a monolithic application; essentially a collection of coarse-grained components that communicated with each other. Communication would involve either simple data passing or two or more services coordinating some activity. SOA served as a valid approach to solving many architectural problems faced by businesses, as applications could be developed by more teams working in parallel and more productively by reusing original code to build new functionality.

SOA was undeniably a revolutionary idea but unfortunately, it was ahead of its time. In the SOA heyday, hardware wasn't powerful enough, and the right standards and technologies simply weren't available. More specifically, components weren't as fine-grained and tended to be large and stateful, encompassing numerous features and functions. Processes and networks weren't fast enough for a fully distributed architecture with independent, single function execution contacts, so the SOA components would informally share data and context with each other for efficiency. Therefore, the services weren't fine-grained enough to isolate the functionality.

Microservices: The Scalable Development Method
Thankfully, today we have microservices, which are revolutionizing application design and development for enterprise IT. Representing a new application architecture and methodology that decomposes the large monolithic applications of the past into a set of small, discrete processes that facilitate both independent development and scale-out for each independent function, microservices can enable businesses to effectively compete by delivering features, services and solutions in minutes.

Perhaps most importantly, microservices allow DevOps teams to build and maintain large, complex software services in a far more efficient manner. Prior to microservices, whenever code that implemented a common function needed to be changed to fix a bug or add a feature, it had to be updated in numerous places owned by different teams. This process could take months or years and often resulted in cumbersome customer experiences or losing out to competitors. But today, microservices' design methodology makes it easier to develop systems with reusable component parts that can be maintained and distributed independently by separate teams and utilized by multiple applications and services throughout an organization.

For Successful Scalability, Automation Is Key
Because microservices only interact with each other via a stable, well-formed API, reuse and independent development is possible, allowing DevOps teams to focus on building unique, value-added capabilities that differentiate their business from competitors. While microservices can make it easier to build, deploy and scale large-scale applications, they can be daunting when it comes to application lifecycle management and resource efficiency if not properly managed. This is why automation is absolutely critical in reducing complexity and enabling the seamless delivery of advanced, global-scale services delivered with less custom code.

Additionally, it's important to acknowledge that containers are often used to run each individual microservice. Containers are an ideal, standardized envelope for microservices, providing a mechanism for independent delivery and scaling. As few or as many containers needed for each microservice can be dynamically created or destroyed based on load, so again, automation is crucial as the rapid creation/provisioning of containers enables the scaling and high availability of microservices.

The Future Demands Nimble, Intuitive Software Services
Thanks to application development modernization, today's digital businesses face a new challenge: the software services they deliver are no longer just a back-office function. Rather, this software is strategic to the very core of the business. In order to compete, features and functionality need to be delivered with high quality faster and with better user experiences. Gone are the days of lengthy, cumbersome application development cycles. In order to survive, businesses today require development processes that resemble highly efficient software factory assembly lines.

For fast-growing organizations looking to satisfy customer demand over the long term, it's time to move past the days of SOA. Embrace today's Cloud Native/Microservices architecture coupled with DevOps methodology and automation technologies. Incorporate fine-grained microservices and rapidly, independently provisioned containers that can run services in their own independent address spaces. In doing so, businesses can reap the benefits of truly scalable and high availability IT architectures, and as a result, stay one step ahead of eager competitors.

More Stories By Scott Davis

Embotics CTO Scott Davis is a well-known technology executive. He was formerly VMware’s End User Computing Business Unit CTO and Chief Datacenter/Storage Architect; he was also founder of Virtual Iron Software acquired for Orcale’s OracleVM. He is a recognized expert in virtualization, clustering, operating systems, storage and end-user computing.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.