Distributed systems in Rails

By Tony Vincent T.Y

Elevator Pitch

Having maintainability nightmares ever since your app grown out of the box to serve tens of thousands of users every day? Ever thought of breaking your application monolith into microservices and switch to a more maintainable & distributed architecture? Don’t miss this talk if your answer is a ‘yes’

Description

A distributed architecture gives separation of concerns, isolation of performance issues and scale at ease. O.k what about data? For a truly distributed architecture to be consistent, there should be reliable data exchange between systems and that’s where we need tools like RabbitMQ, Apache Kafka etc comes into play. This talk covers the following topics in 30 mins

  • Why distributed microservices
  • The publisher-subscriber architecture
  • Message queues in rails
  • Challenges in choosing a distributed microservices architecture for Rails
  • The Pros and cons of this architecture
  • A few interesting stuff I learned using RabbitMQ with Rails

Notes

I was part of a team that rewrote a monolithic rails application of one of our clients into a set of microservices and we used RabbitMQ for message queuing. It was fun working on the project and I learned a great deal down the road. I am looking forward to sharing my experience and thoughts with my fellow developers