Da der Docker-Container-Overhead hier nicht signifikant und vernachlässigbar ist, geht es eher um die Architektur in einem Microservices-Paradigma.
Leistung ist in der Tat eine komplexe Frage, und es gibt keine allgemeinen Ratschläge, aber vielleicht hilft Ihnen Folgendes:
Ich persönlich bezweifle, dass man zu Projektbeginn versuchen sollte, alle möglichen Performance-Probleme im Vorfeld zu lösen (#MVP , #agil )Korrigieren Sie mich jedoch, aber es sieht so aus, als hätten Sie nicht viele Ressourcen (einen Host?) und möchten mit diesen Ressourcen im Voraus sparsam umgehen.
Ok, was ist jetzt deine größte Sorge?
RAM ist ein Problem
Dann zwei gleichzeitige MySQL-Instanzen auf demselben Host ist vielleicht nicht so gut (aber kein Problem für verschiedene Setups)
Für einen Host würde ich vorschlagen, mit der Verwendung eines Datenbank-Containers zu beginnen, aber verschiedene Schemas zu erstellen. Dies könnte zusätzliche Arbeit mit dem Standard-Container erfordern (https://forums.docker.com/t/multiple-databases-in-official-mysql-container/8324 )
Andere Bedenken
Ich würde mich jetzt nicht allzu sehr darum kümmern und von Anfang an mit separaten Datenbanken beginnen. Die Möglichkeit, Ihre Dienste horizontal zu den Datenbanken zu trennen, ist ein enormer Wert! Ich möchte diese Designentscheidung nicht wegen sehr theoretischer zukünftiger Leistungsprobleme schwächen.