Tag: microservices

Node.js + microservices = Moleculer

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.

Read more...

Decomposition of a monolithic beast

Sit down in your chair and relax. Close your eyes and think about a system that you wouldn’t like to work on. What would it be like? Let’s check how much in common it would have with the one we have “inherited”.

  • Unsupported PHP 5.6
  • Unsupported Laravel 4.2
  • jQuery snippets used all over many different HTML files produced by Blade – Laravel’s templating engine.

 

That would be for the beginning. This system was supposed to be fed by an API and it partially was, however, during the most active development phase over 20 tables appeared in its own database, in most cases very “loosely related”, if at all. I believe that happened to speed up delivering short term functionality, but it actually illustrates the scale of the problem.

Read more...

We use cookies to enhance your user experience. By continuing to browse the site, you are agreeing to our use of cookies.
Read more