Stworzyłem aplikację Node.js (Meteor) i zajmuję się strategiami obsługi skalowania w przyszłości. Zaprojektowałem moją aplikację jako zestaw mikroserwisów i teraz rozważam wdrożenie tego w produkcji.Skalowanie mikroserwisów za pomocą Dockera
Chciałbym jednak, aby wiele mikroserwisów działało na jednej instancji serwera, aby zmaksymalizować wykorzystanie zasobów podczas korzystania z niewielkiej liczby zasobów. Wiem pojemniki nadają się do tego, ale jestem ciekaw, czy jest jakiś sposób na stworzenie dynamicznego skalowania zestaw pojemników gdzie mogę:
- poleceń zapisu, takie jak „Przepis innej aplikacji kontenera na tym serwerze, jeśli pojemniki działanie tej aplikacji osiąga> 80% CPU/inne parametry ograniczające ",
- Zapewnienie i przygotowanie innych serwerów w razie potrzeby dla dodatkowych kontenerów,
- Połączenia bilansu obciążenia między tymi kontenerami (i ma to wpływ na równoważenie obciążenia serwera, np. wysyłanie mniej połączenia z serwerami z mniejszą liczbą kontenerów?)
Sprawdziłem AWS EC2, Docker Compose i nginx, ale nie jestem pewien, czy zmierzam w dobrym kierunku.
Struktura kodu w Meteor 1.3+ sprzyja pisaniu mikrourządzeń w Meteorrze. Aby zarządzać współzależnościami pomiędzy usługami, należy użyć innegoMeteor = DDP.connect (anotherMeteorServer). Mój 2c. Jeszcze tego nie próbowałem. – vijayst
@Vijay Mogę wrócić, aby odpowiedzieć na to sam, gdy będę miał czas. Myślę, że mam pomysł, jak to zrobić, chociaż nie miałem czasu, aby spróbować, więc obserwuj tę przestrzeń dla odpowiedzi, jeśli jej potrzebujesz/przeszkadza mi, jeśli zapomnę odpowiedzieć i wciąż szukasz. –