Service Discovery – Spring Cloud Eureka

In microservices architecture, we tend to create lot of services which are loosely coupled from each other. Inherently this distributed system design has more inter-service communication and hence each service running in cloud should be able to locate other dependent services easily. Service discovery in the past has been done using service locators or configured … Continue reading Service Discovery – Spring Cloud Eureka

Spring Cloud Configuration

In my previous post on Cloud Native Applications, we discussed the benefits of 12 factor application and the characteristics that makes the application cloud ready. Once of the characteristics we discussed was to store the configuration outside the build artifact. Now let's see how we can leverage Spring Cloud Configuration server to store and inject the configuration that … Continue reading Spring Cloud Configuration

Cloud Native Applications

My previous post on Microservices discussed the benefits of decomposing monolithic applications into smaller services which could be deployed independently. We also discussed that microservices is an architectural style which promotes the applications to have a clear separation of concern a.k.a. bounded contexts and use the most appropriate technology stack. Once we embark on the microservices journey, we … Continue reading Cloud Native Applications

Microservices

Presently, there is a lot of hype in the industry, especially large enterprises, to adopt Microservices architecture due to the benefits it offers when compared to monolithic architecture. However, it is important to understand that adopting Microservices is not a free lunch as it not only impacts just the technology but also people, processes and the team organization. … Continue reading Microservices

Queuing Theory for evaluating system performance in Event Driven Architecture – Part 2

In my previous post on Event Driven Architecture (EDA), we looked at the basic building blocks of EDA and some of the considerations around the system performance for event generation, processing and publishing. We discussed about the importance of running the performance tests to evaluate the system behavior under peak load. In this article, we'll discuss the basics … Continue reading Queuing Theory for evaluating system performance in Event Driven Architecture – Part 2

Queuing Theory for evaluating system performance in Event Driven Architecture – Part 1

Event Driven Architecture (EDA) is gaining a lot of popularity due to the benefits it offers to an enterprise to easily connect multiple disparate systems. Instead of creating a direct or point to point communication links between the systems that need to talk to each other, the communication process can be decoupled by having the … Continue reading Queuing Theory for evaluating system performance in Event Driven Architecture – Part 1