Few takeaways from Segment’s journey of moving from a monolith to a microservice-style architecture & back to a monolith:
- A solution that looks like an instant & perfect fit in the current scenario may not be the best solution when you consider potential scale of your system.
- While making technology decisions, we must also consider the long term operational costs & benefits of a solution.
- There are cons of a monolith: fault isolation is difficult, in-memory caching is less effective and updating the version of a dependency might break multiple other dependencies.
- But remember that adopting a popular trend can hurt both team productivity & product performance. Be fully prepared to deal with the costs of change when making a shift.
- Adopt a new trend only after getting a fair understanding of its implications on a scaled-up version of your current system.
Full post here, 13 mins read