Microservice architecture implementation throws lot of challenges that must be thought through. This blog post tries
Category Archives: Software Architecture
Master Worker Architecture using Vert.x
Today I am going to explain how Vert.x can be used for creating distributed Master Worker Paradigm. In large scale systems it’s applicable to wide variety of problems. First – Just to refresh our memories about what Vert.x is Vert.x as we know is a lightweight framework for creating distributed microservices. It can saleContinue reading “Master Worker Architecture using Vert.x”
MicroService Architecture
Here is a microservice architecture deployment diagram. All Services are docker containers which are registered to Consul Server via Registrator. Client (External – Mobile, UI) makes a call to Bouncer which is our API Proxy. Bouncer has all permissions configured on API URLs. It makes a call to Auth Server which authenticates the request andContinue reading “MicroService Architecture”
Kafka Cluster Setup
from my own experience I find that while setting up kafka cluster on AWS we face some issues so just want to highlight them. a. First setup zookeeper cluster. Let’s say 3 node cluster. Modify each node zoo.conf to publish ip address as internal IP address. server.id=<internal aws ip1>:2888:3888 server.id=<internal aws ip2>:2888:3888 server.id=<internal aws ip3>:2888:3888Continue reading “Kafka Cluster Setup”
Vert.x Cluster
Vert.x is an extremely simple event based, non blocking, library for distributed computing that can be easily embedded in any Java framework of your choice. For sometime now I have been exploring Vert.x. I was looking for a vert.x cluster sample but I did not find any decent example so I decided to share thatContinue reading “Vert.x Cluster”
Web Application Scalability Part-3 ES vs Redis
Its 3rd article in Web Scalability..Today I am looking at various projects going on in Indian Start ups and I am thrilled by variety of technologies being used. While this sounds good at the same time I feel we are unable to utilize core strengths of technologies used. Their usage in architecture will always be dependentContinue reading “Web Application Scalability Part-3 ES vs Redis”
Web Application Scalability – Service Layer
So In our last post I promised that we will talk about how to make monolithic code into distributed SOA architecture. Well its not easy. Once you have decided that you want to re-architect the single chunk of software in distributed manner you have to decide about different parts of the system which can beContinue reading “Web Application Scalability – Service Layer”
Web Application Scalability – Part 1
Foundation I have been thinking about writing about software architecture for a while. There is lot of confusion among programmers about how to design software at scale. Teams fight about a programming language/framework/library/tools and what not. So I intend to share my experience in this field and I will keep writing new articles and improviseContinue reading “Web Application Scalability – Part 1”
Software Architecture – How to approach ( A simplistic view) – Part 1
While architecting software systems all we have to do is what will change and what will be static. What can be enhanced and what can be removed. I find this principle at the core of Design Patterns. Whatever can change (and this question needs to be answered on regular basis) one needs to put itContinue reading “Software Architecture – How to approach ( A simplistic view) – Part 1”