Posts

Showing posts from July, 2016

Microservices based Cloud Native Application - Part III

Preview:This is the third post in the series of Microservices based application development.
The entire series could be found here:
Microservices based Cloud Native Application - Part I

Microservices based Cloud Native Application - Part II


Microservices based Cloud Native Application - Part III


Overview:
Continuing from previous posts, in this post, I'm going to write about a few challenges which I faced while implementing the Microservices and how did I address them. This might hopefully help other folks who might run into similar issues.


Challenges faced while implementing Microservices:Issue 1:
While using Zuul API, I was getting the following exception, when the angular JS application, invoked the Zuul service.
com.netflix.zuul.exception.ZuulException: Forwarding error
at org.springframework.cloud.netflix.zuul.filters.route.RibbonRoutingFilter.forward(RibbonRoutingFilter.java:132) at org.springframework.cloud.netflix.zuul.filters.route.RibbonRoutingFilter.handleException(RibbonRoutingFi…

Microservices based Cloud Native Application - Part II

Preview:This is the second post in the series of Microservices based application development. The entire series could be found here:
Microservices based Cloud Native Application - Part I
Microservices based Cloud Native Application - Part II
Microservices based Cloud Native Application - Part III
Overview:
Continuing from my previos post, I'm going to explain in detail, three concepts which are essential ingredients of a Microservices Architecture.
Service DiscoveryAPI GatewayCircuit BreakerService Discovery:In a Microservices environment, we will have multiple services and when the same is deployed in a Cloud Environment, we will  have multiple instances of each service.
In such a scenario, we need services to be self discover-able. This will help in two ways. 
First, when one service invokes another service, it needs to know the actual location where it is hosted and which instance it should point to. Second, in a cloud environment, when we add/remove instances, other services need to kno…