Microservices styles and services - Akka cluster vs Kubernetes vs

So here it is. I really like the idea of ​​microservices and I want to configure and check it before deciding if I want to use it in production. And then, if I really want to use it, I want to gradually uncork fragments of my old rails application and move the logic to microservices. I think I can use HAProxy and configure other URL-based routing. Therefore, this should be considered.

Then my next big problem is that I do not want too much overhead to ensure uninterrupted operation on the infrastructure side. I want the preferred low configuration and ease of development, testing and deployment.

Now, I want to know what are the advantages and disadvantages of each style. Akka (cluster) against something like Coubernes (maybe even fabric8 on top of it).

What I'm also worried about is fault tolerance. I don’t know how you do it with Kubernet. Should you include a message queue so that your messages are not lost? And then also have multiple queues if one of the queues goes down? Or just try again until the queue appears again? Actors Akki already have this right? Duplicate and mailboxes? What are the failover strategies for microservices? Do they differ for each approach?

Someone please enlighten me!;)

+5
source share
1 answer

I don’t know much about Akka, but after a quick read, it seems that this application. Kubernetes is a little lower. Kubernetes manages and manages your containers for you. We do not have the concept of queues or mailboxes.

Kubernetes will soon have L7 load balancing so you can make URL maps.

As far as fault tolerance is concerned, the kubernets guarantee that your stated intentions are correct, make N copies of this container. This container may be an Akka application or may be mysql - dopesn't matter.

Docker + Akka has many guides. Kubernetes makes docker container management easier, but the app is still yours :)

+1
source