February 4, 2016 | Written by: Doug Rothert
Categorized: Compute Services | What's New
Share this post:
While the value of cloud is clear, many enterprises still face significant challenges building large scale solutions in the cloud. In many cases enterprise customers move large monolithic legacy business services to the cloud that are costly to maintain and update, and miss out on the benefits of modern software architecture including microservices.
A microservice architecture allows developers to break down large, traditionally monolithic service into smaller, more dynamic services that follow a well defined interface. This allows for focused development of a specific business capability that limits the impacts of a service failure, improves the upgrade experience of a service, and better protects the long term investment of the overall solution through replaceable services.
To help our customers build more success services, today we are thrilled to announce Service Discovery – a vital service that helps you to start using microservices today.
Success starts with Microservices
Microservices is an architectural style in which large, complex software services are decomposed into one or more smaller services with a well defined interface. Each of these microservices focuses on completing one task that represents a small business capability.
The business benefits of a microservice design include:
- Limiting the impact of failures of a service – by splitting up a large monolithic service into separate services you immediately limit the impact of failure or update
- Reducing the validation costs of a service – By reducing the scope of a service and creating a well defined interface you can better utilize automated testing to reduce validation costs
- Focusing development teams and requirements – narrower scope enables a smaller teams of developers to focus on delivering a smaller set of specific requirements, more rapidly
- Protect long term development investment – Well defined interfaces that form a contract – this allows you to minimize the investment in any one version of any one component.
There is a critical challenge when switching to a microservice design before you can claim these benefits. How do you find available instances of your microservice to call?
In a monolithic application, services invoke one another through language-level method or procedure calls, while in a traditional distributed system deployment, services run at fixed, well known locations and so can easily call one another.
A modern microservice-based application typically runs in a virtualized or containerized environments where the number of instances of a service and their locations constantly changes dynamically.
This is the problem that Service Discovery solves. It helps clients of a microservice find an available instance of a microservice that they can call.
Service Discovery makes Microservices work without adding to your work
Now you can benefit from microservices: The Service Discovery service on Bluemix offers easy microservice registration, and a simple API for finding instances based on logical names. Service Discovery supports an intuitive REST API that works with any programming language and allows you to quickly locate your services.
Service Discovery has a major advantage over other solutions is it allows you to start building your own microservices without the hassle and worry of having to maintain your own service registry. Other solutions require you to setup and maintain their software within your environment manually. Service Discovery allows Bluemix users all the benefits of using microservices today at no cost.
Ready, set, go!
For more details on Service Discovery, see the IBM Service Discovery for Bluemix documentation. Follow the deployment instructions to get started registering and querying your own microservices.
Ready to relegate large monolithic services to the past? Try Bluemix and Service Discovery today!
For more information on Microservices