Service, EVERYTHING could be (Micro) Service

Micro Service

Recently I’ve come to the realization that  almost everything in software could be packaged separately as a ( Micro ) Service.

  • Ideally it could scale up by putting a load balancer in front of every service and turn on or off containers and/or virtual machines per need.
  • Idealistically it could work without human intervention at the back-end side.

If every step of their job is formalized and then programmed and started on some machine – somewhere – the users and consumers should be able to complete their job 100%.

Almost every functionality could be exposed internally or – why not – externally. The common practice is over HTTP, but other communication channel could also be used – like cache and messaging systems. This could include things – as small as true or false flags – to big distributed block-chains – associated to entity – global (static) configuration, accounting table (like Bitcoin) – or wrappers for a service or per user/profile personalization… That’s why the big cloud providers have expanded their suites so much.

The sneaky part is when corporations want and need fine – tuned control. Then, every corporations implements and re-implements the same feature, just under different “legal hat”. And when developers need some external service – the smart way is to create wrappers, facades or interfaces. The external dependency could be easily swapped if the developers that consume of the wrappers use only internal dependencies. The same thing is present in applications on the front and native ends – with the increase of modularization, orchestration and architecturization in layers and design patterns.

Here are some things that I’ve done:

I have more ideas for wrappers and facades, so I could stop reimplementing the same functionalities in every app or service – with the highest priority for me, because of their spread – emails and push notifications . I wonder – do you have or wish some functionality wrapped for you that I could consider?

Leave a Reply

Your email address will not be published. Required fields are marked *