If you have an enormous application that grows year by year, there will be a day when you realize that in your team there are only one, or maybe two people who understand code. So what shall you do with this knowledge? There are few possibilities:
- Rewrite whole app like Microsoft is doing with Windows.
- Refactor code – pay technological debt.
- Do nothing just live with this (many companies are working like this way).
However, there is another choice…microservices. Imagine a system splitted into plenty of small apps communicating through one message broker. These small apps would be easier and faster to analyze. We, developers could focus only on logical part of application and write code instead of analyzing thousands of code lines.
Ok… We now know that microservices could be the resolution for our problems. But we have heard that this approach is difficult to design and even more difficult to implement. How can we do this? Well, we have many choices, but I would like to focus on using great framework called Moleculer.
It has its own CLI, allows to manage nodes and supports plenty of message brokers.