September 17, 2017 | Written by: William A. Brown
Categorized: CIO | Cloud | CTO | Digital Transformation
Share this post:
With the continued, unrelenting expansion of customer, supplier and partner ecosystems, organizations are seeking better ways to strengthen engagement with them, and optimize their contribution to the corporate bottom line. Microservices enable digital leaders to meet the requirements of these constituents by quickly adding new functionality, making changes to and maintaining existing functions, and bringing products to market in a timely fashion.
First things first. What are microservices?
If you’re a technologist, you may already be familiar with microservices. For the layman, they’re an engineering approach and architectural style of computing that is becoming extremely important for organizations. Microservices enable them to innovate through a stronger engagement with their ecosystem of customers, suppliers and partners — and, as we all know, engagement is the foundation of a lasting relationship.
To better explain, let’s say your organization is the sponsoring bank at the US Open. A large number of your customers who attend the event may be unfamiliar with the location. But while they’re there, they may need some, but not all, of your financial services — like an ATM locator, or the ability to transfer funds from one account to another. Chances are they won’t need to pay a bill while they’re enjoying the match.
Fortunately for your sports enthusiast customers, your app offers all of these functions.But there will be increased traffic on the ATM Locator, so the app needs to scale and increase capacity for the locator functionality. In a non-microservices architecture, more capacity would be added to the entire app — a costly endeavor — or the response time would increase. That delay would not provide a great experience for your customer.
Microservices provide changes only when and where they’re needed
With a microservices architecture, the application monitors each functional component. It detects the increased traffic, and adds new instances of the ATM Locator function as demand requires. In other words, it auto-scales the individual components to meet increased demand. When the event is over, it senses the drop in traffic, and scales back accordingly. The app is available the entire time, leaving no gap in user experience.
In an age where customers expect uninterrupted, seamless digital experiences, this is a huge breakthrough, and a necessary action for anyone offering digital products and services.
Microservices versus APIs
Microservices are often confused with Application Programming Interfaces (APIs) and the two terms tend to be used interchangeably. But they represent two very different things.
So what is the difference between microservices and APIs? Think about it this way: Say you’re in a western movie set — one of the ones where the town is set up, but it’s only the façade. So you can see the outside of the buildings, the saloon, the barber, et cetera.But there’s nothing behind the front of the building. That’s an API.
Now, imagine that you are actually in an old west town. You can see the front of the buildings, but you can also walk inside them and see what is going on. That part — the next step behind the façade — is where microservices come in. Microservices are the next part of the architecture, a tier of the backend closest to the façade. To build a great application, you need both — the backend and the façade. They work together, but they are not the same thing.
Now that I’ve explained what microservices are so everyone understands them, I’ll be discussing why you need to make them part of your organization’s plans. Please look out for my next post, “Why microservices matter to you”.
Follow me on LinkedIn for the next post
For more on how clients are using Cloud and Microservices for digital transformation: ibm.biz/cloudconsulting