Welcome!

Microservices Expo Authors: Pat Romanski, Dalibor Siroky, Stackify Blog, Elizabeth White, Liz McMillan

Related Topics: Microservices Expo, @CloudExpo, @DevOpsSummit

Microservices Expo: Blog Feed Post

Microservices – Cloud Architecture for Digital Businesses | @CloudExpo #Cloud #Microservices

Netflix has pioneered a revolution of the very nature of software, de-composing monolith apps into a suite of Microservices

Microservices - Cloud Architecture for Digital Businesses
By Neil McEvoy

In a VentureBeat article the author describes ‘the future of enterprise tech‘, describing how pioneering organizations like Netflix are entirely embracing a Cloud paradigm for their business, moving away from the traditional approach of owning and operating your own data centre populated by EMC, Oracle and VMware.

Instead they are moving to ‘web scale IT’ via on demand rental of containers, commodity hardware and NoSQL databases, but critically it’s not just about swapping out the infrastructure components.

Netflix have also pioneered a revolution of the very nature of software itself, de-composing monolith applications into a suite of Microservices, enabling high velocity digital innovation.

Netflix OSS
Netflix is exactly the type of business venture you would think of when considering the benefits of Cloud computing.

They are challenged not only to distribute a massive volume of media across the global Internet to millions of customers, each generating a fluctuating demand for streaming resources, they are also required to innovate at high speed too, improving and adapting their service and business model in response to equally effective competitors.

Therefore what is interesting about their case study is how their technology strategy enables both. Through their pioneering of best practices like ‘Microservices’ and ‘Continuous Deployment’ they are able to both service this gigantic volume of media distribution, and also frequently update the business platform that performs this function, improving the user experience, optimizing performance and so on.

To best exploit the web scale capabilities that Amazon Cloud services offer, Netflix entirely re-engineered their approach to building and deploying software, becoming the poster child for the approach now known as Microservices.

Not only did they share their experiences of doing so, through blogs and presentations, they also literally published them as reusable Cloud best practices, distributing the components they developed to make this possible as open source software. This Medium interview provides a comprehensive background that led them through this path.

Organizations like Nike then adopted the same approach enabled by these building blocks to enjoy the same benefits of increased, rapid innovation, and the considerable opportunity is that any other organization is able to harness these same capabilities for the same results.

software process cycle

Microservices Continuous Delivery
Microservices are introduced in the
Wikipedia page as “a software architecture style, in which complex applications are composed of small, independent processes communicating with each other using language-agnostic APIs. These services are small, highly decoupled and focus on doing a small task”.

Sam Newman offers this 114 slide presentation on the Principles of Microservices. They are described to bring many powerful benefits although Gene Hughson argues that microservices aren’t for everyone.

It’s often criticized simply as old wine in new bottles, simply re-branding what is an existing architecture, the SOA (Service Oriented Architecture), however as expert Martin Fowler describes in this comprehensive guide that is typically an approach for integrating monolith applications often using an Enterprise Services Bus.

In contrast microservices are an entirely different approach for how these monolith applications are built in the first place, specifically:

“the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API.”

Naturally a key dynamic of microservices is that they are small units of code, with some arguing this can be defined specifically as 10-100 lines of code, however this isn’t a hard rule and really the principle benefit is derived from the modular approach.

The nature of monolith software development means that even small changes require the entire monolith to be re-deployed each time, a cumbersome approach that slows the product development life-cycle considerably.

In contrast the key feature of microservices is a modularity that enables each individual microservice to be re-deployed on its own, making them ideal for the high velocity change rates desired of a shift to DevOps and Continuous Delivery approaches.

Organized around Business Capabilities
This includes a transformation of how teams operate and deliver code too. As Martin Fowler describes monolith software systems tend to have their teams built around only the technologies they manage, whereas microservices encourages teams to be end-to-end responsible for the products they deliver.

Microservices, Containers and Multi-Platform Development
With this DevOps evolution in mind it naturally leads to the question of the potential relationship between microservices and containers, like Docker.

Nate Slater, a Solution Architect with AWS Startups explores this question, providing an insightful overview that sets the scene through the history of web application design that leads up to this evolution.

He makes the point that because microservices are intended to deliver one specific business function via minimal resource requirements, those requirements can be met in an optimized fashion through delivering them via a Docker container.

“It is this isolation between containers running on the same host that makes deploying microservice code developed using different languages and frameworks very easy. Using Docker, we could create a DockerFile describing all the language, framework, and library dependencies for that service.”

Nate also makes the same critical point that Martin Fowler does, that De-centralized Governance is possible where you can ‘use the right tool for the right job’, such as using Node.js for a simple report page or C++ for a service that requires more demanding real-time processing. Nate echoes this, adding other scenarios that might be better met through Python or Ruby.

The post Microservices – Cloud Architecture for Digital Businesses appeared first on Cloud Best Practices.

Read the original blog entry...

More Stories By Cloud Best Practices Network

The Cloud Best Practices Network is an expert community of leading Cloud pioneers. Follow our best practice blogs at http://CloudBestPractices.net

@MicroservicesExpo Stories
While some developers care passionately about how data centers and clouds are architected, for most, it is only the end result that matters. To the majority of companies, technology exists to solve a business problem, and only delivers value when it is solving that problem. 2017 brings the mainstream adoption of containers for production workloads. In his session at 21st Cloud Expo, Ben McCormack, VP of Operations at Evernote, discussed how data centers of the future will be managed, how the p...
The nature of test environments is inherently temporary—you set up an environment, run through an automated test suite, and then tear down the environment. If you can reduce the cycle time for this process down to hours or minutes, then you may be able to cut your test environment budgets considerably. The impact of cloud adoption on test environments is a valuable advancement in both cost savings and agility. The on-demand model takes advantage of public cloud APIs requiring only payment for t...
It has never been a better time to be a developer! Thanks to cloud computing, deploying our applications is much easier than it used to be. How we deploy our apps continues to evolve thanks to cloud hosting, Platform-as-a-Service (PaaS), and now Function-as-a-Service. FaaS is the concept of serverless computing via serverless architectures. Software developers can leverage this to deploy an individual "function", action, or piece of business logic. They are expected to start within milliseconds...
As DevOps methodologies expand their reach across the enterprise, organizations face the daunting challenge of adapting related cloud strategies to ensure optimal alignment, from managing complexity to ensuring proper governance. How can culture, automation, legacy apps and even budget be reexamined to enable this ongoing shift within the modern software factory? In her Day 2 Keynote at @DevOpsSummit at 21st Cloud Expo, Aruna Ravichandran, VP, DevOps Solutions Marketing, CA Technologies, was jo...
You know you need the cloud, but you’re hesitant to simply dump everything at Amazon since you know that not all workloads are suitable for cloud. You know that you want the kind of ease of use and scalability that you get with public cloud, but your applications are architected in a way that makes the public cloud a non-starter. You’re looking at private cloud solutions based on hyperconverged infrastructure, but you’re concerned with the limits inherent in those technologies.
Is advanced scheduling in Kubernetes achievable?Yes, however, how do you properly accommodate every real-life scenario that a Kubernetes user might encounter? How do you leverage advanced scheduling techniques to shape and describe each scenario in easy-to-use rules and configurations? In his session at @DevOpsSummit at 21st Cloud Expo, Oleg Chunikhin, CTO at Kublr, answered these questions and demonstrated techniques for implementing advanced scheduling. For example, using spot instances and co...
The cloud era has reached the stage where it is no longer a question of whether a company should migrate, but when. Enterprises have embraced the outsourcing of where their various applications are stored and who manages them, saving significant investment along the way. Plus, the cloud has become a defining competitive edge. Companies that fail to successfully adapt risk failure. The media, of course, continues to extol the virtues of the cloud, including how easy it is to get there. Migrating...
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 app...
Some journey to cloud on a mission, others, a deadline. Change management is useful when migrating to public, private or hybrid cloud environments in either case. For most, stakeholder engagement peaks during the planning and post migration phases of a project. Legacy engagements are fairly direct: projects follow a linear progression of activities (the “waterfall” approach) – change managers and application coders work from the same functional and technical requirements. Enablement and develo...
Gone are the days when application development was the daunting task of the highly skilled developers backed with strong IT skills, low code application development has democratized app development and empowered a new generation of citizen developers. There was a time when app development was in the domain of people with complex coding and technical skills. We called these people by various names like programmers, coders, techies, and they usually worked in a world oblivious of the everyday pri...
From manual human effort the world is slowly paving its way to a new space where most process are getting replaced with tools and systems to improve efficiency and bring down operational costs. Automation is the next big thing and low code platforms are fueling it in a significant way. The Automation era is here. We are in the fast pace of replacing manual human efforts with machines and processes. In the world of Information Technology too, we are linking disparate systems, softwares and tool...
DevOps is good for organizations. According to the soon to be released State of DevOps Report high-performing IT organizations are 2X more likely to exceed profitability, market share, and productivity goals. But how do they do it? How do they use DevOps to drive value and differentiate their companies? We recently sat down with Nicole Forsgren, CEO and Chief Scientist at DORA (DevOps Research and Assessment) and lead investigator for the State of DevOps Report, to discuss the role of measure...
DevOps is under attack because developers don’t want to mess with infrastructure. They will happily own their code into production, but want to use platforms instead of raw automation. That’s changing the landscape that we understand as DevOps with both architecture concepts (CloudNative) and process redefinition (SRE). Rob Hirschfeld’s recent work in Kubernetes operations has led to the conclusion that containers and related platforms have changed the way we should be thinking about DevOps and...
"As we've gone out into the public cloud we've seen that over time we may have lost a few things - we've lost control, we've given up cost to a certain extent, and then security, flexibility," explained Steve Conner, VP of Sales at Cloudistics,in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
These days, APIs have become an integral part of the digital transformation journey for all enterprises. Every digital innovation story is connected to APIs . But have you ever pondered over to know what are the source of these APIs? Let me explain - APIs sources can be varied, internal or external, solving different purposes, but mostly categorized into the following two categories. Data lakes is a term used to represent disconnected but relevant data that are used by various business units wit...
With continuous delivery (CD) almost always in the spotlight, continuous integration (CI) is often left out in the cold. Indeed, it's been in use for so long and so widely, we often take the model for granted. So what is CI and how can you make the most of it? This blog is intended to answer those questions. Before we step into examining CI, we need to look back. Software developers often work in small teams and modularity, and need to integrate their changes with the rest of the project code b...
"I focus on what we are calling CAST Highlight, which is our SaaS application portfolio analysis tool. It is an extremely lightweight tool that can integrate with pretty much any build process right now," explained Andrew Siegmund, Application Migration Specialist for CAST, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"Cloud4U builds software services that help people build DevOps platforms for cloud-based software and using our platform people can draw a picture of the system, network, software," explained Kihyeon Kim, CEO and Head of R&D at Cloud4U, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Kubernetes is an open source system for automating deployment, scaling, and management of containerized applications. Kubernetes was originally built by Google, leveraging years of experience with managing container workloads, and is now a Cloud Native Compute Foundation (CNCF) project. Kubernetes has been widely adopted by the community, supported on all major public and private cloud providers, and is gaining rapid adoption in enterprises. However, Kubernetes may seem intimidating and complex ...
DevOps is often described as a combination of technology and culture. Without both, DevOps isn't complete. However, applying the culture to outdated technology is a recipe for disaster; as response times grow and connections between teams are delayed by technology, the culture will die. A Nutanix Enterprise Cloud has many benefits that provide the needed base for a true DevOps paradigm. In their Day 3 Keynote at 20th Cloud Expo, Chris Brown, a Solutions Marketing Manager at Nutanix, and Mark Lav...