Ich möchte jede mögliche Unze des Gebrauchs aus der freien elastischen Bohnenstangenstufe herausdrücken.
Mein Backend besteht aus einer Reihe von Microservices (mit ktor). Ich habe 5 Microservices , um genau zu sein. Alle diese sind dockerized und ich versuche , sie alle auf dem gleichen winzigen zu laufen t2.micro (frei) elastische Bohnenstengel Instanz mit der Multi-Docker Bild Umgebung
Da Java Java ist, werden gerne etwa 200 MB RAM pro Docker-Container für den einfachsten Microservice im Leerlauf verwendet.
Mit t2.micro erhalten Sie also 1 GB RAM. Ich habe 5 Microservice-Docker-Container, die jeweils mindestens 200 MB erfordern = ganz in der Nähe.
Das Problem ist, dass die Erinnerung fast immer fast immer zu 100% schwebt.
Gibt es also eine Möglichkeit, den Docker-Containern dynamisch Speicher zuzuweisen, je nachdem, wie viel frei ist und wie dringend ein Container ihn benötigt?
Angenommen, ein Container hebt schwer, während die anderen größtenteils im Leerlauf sind. Ich möchte etwas RAM auf den Container richten, der die schwere Aufgabe erledigt, und nach Abschluss der Aufgabe auf die gleiche RAM-Zuweisung pro Container zurückgreifen.
Gibt es eine Möglichkeit, dies zu tun?
quelle