Distributed Systems & Micro Services
Uber- started as monolith where following modules are into single appln integrated with each other. Tight coupling with single codebase Passenger mgmt driver mgmt trip mgmt billing notification service Challenges Every bugfix require rebuilding complete appln & testing as it is single code base Fixing bug is extremely difficult in single repository scaling one module over other is difficult Micro Services - Advantages Deploy modules independently with out changing any other modules Modules are scaled independently Bug fixing will be easy and doesn't interfere with other modules API Gateway/reverse proxy routes the requests to right micro services single entry points for all requests. Helps in analytics/metrics generation Different modules communicate via message queues(ActiveMQ) Active MQ Async message flow JMS Model Queue based -> Point to Point communication Topic based -> Publisher, Subscriber model. Receiver synchronously receive a message Use liste...