Abdullahi
Abdullahi

Reputation: 154

NodeJS microservices

We are in the process of releasing an API. We are using the microservices pattern , docker,nodejs and express to build our API. We have the following the services ...

  1. Express services that exposes an API
  2. A services that does our business logic that accepts request from the above express services and return data using redis messaging
  3. Payments services to charge for our api(redis messaging)
  4. Auth services

We have a load balancer and 3 instances of a vm that runs docker and these services. So my question is this a good way to run our API or could we improve. Like do we have to use an orchestration tool like kubernetes. Do we have to change the we organize our services.

Upvotes: 3

Views: 669

Answers (1)

Al Tsang
Al Tsang

Reputation: 71

It really depends on your goals and requirements.

For example - is there a specific requirement to have the isolation of the microservices at the VM level? If not, then you'll definitely achieve efficiencies by running on a single VM running multiple containers, or something even lower level without the overhead of a full blown OS - just to run containers (e.g. CoreOS, Rancher, etc.)

Note that Kubernetes will help you organize and orchestrate your containers by giving you the ability to segment via pods and also provide other convenient wiring like networking between containers (a very common requirement), but Kubernetes will not have any specific application level knowledge of what your application is as a whole (nor should it).

If you can specify what criteria is that you're trying to optimize for, your question can be better answered.

Upvotes: 1

Related Questions