EuroPython 2016

Split Up! Fighting the Monolith

Speaker(s) Patrick Mühlbauer

Do you know this situation, where you and your team are facing this big monolith? An application which has grown far too big over the years. Every time when you make a change, you have to fear the code might break at a totally different place, because lots of things are closely intertwined. But what to do if you are at such a point? Maybe you start thinking about microservices but then questions like “Are they really the right thing for us?” and “How do we get there?” arise.

In my talk I will show you how we are dealing with our monolith. A collection of multiple python packages without clear boundaries, forming the actual application - all living in a single monorepo.

I will talk about how we split up the whole thing, making it more flexible for us and also easier to use individual components by other teams. All this, of course, comes with a price: You have to think more about the dependencies between you components. You have to think about how you can efficiently test everything, making sure your final application is still working correctly. Don’t loosing yourself in dependency hell and packaging all components correctly becomes quite a challenge.

This talk will:

  • show you bad patterns to avoid, so that you don’t end up in the above situation in the first place
  • give you ideas what to consider when tackling your monolith
  • explain how to package your python components and how to mange your dependencies

in on Friday 22 July at 12:00 See schedule

Do you have some questions on this talk?

New comment