Ich habe eine Suite, an der ich arbeite, die ein paar Mikro-Dienste zusammen arbeitet. Ich verwende Docker, um die Umgebung einzurichten und es funktioniert großartig.Sharing-Code zwischen Microservices
Meine Projektkomponenten sind wie folgt:
- MongoDB
- Node.js Arbeiter, die einige Verarbeitung auf der DB tut
- Node.js REST-API, die den Benutzer
Wie Sie wahrscheinlich vermuten können, sollen die 2 Node.js Server mit der gleichen DB arbeiten. Jetzt habe ich meine Modelle in einem der Projekte definiert, aber ich frage mich, was ist die beste Praxis, wenn es um die zweite geht. Ich würde wirklich gerne vermeiden, kopieren meinen Code einfügen, weil das bedeutet, dass ich beide auf dem Laufenden halten muss, wenn ich Änderungen an dem Schema mache. gibt es eine gute Möglichkeit, den Code zwischen ihnen zu teilen?
mein Projekt sieht wie folgt aus:
rest-api // My first Node.js application
models
MyFirstModel.js // This is identical to the one in the worker/models folder
MySecondModel.js
index.js
package.json
Dockerfile
worker // My second Node.js application
models
MyFirstModel.js
MySecondModel.js
index.js
package.json
Dockerfile
docker-compose.yml
Jede Eingabe wird hilfreich sein.
Danke.
Warum haben Sie zwei getrennte Anwendungen? Und warum sind die Modelle identisch? – tomliversidge
wie ich erklärt habe. 2 Micro Services arbeiten mit der gleichen Datenbank – dcohenb
Ich meinte, warum haben Sie zwei Microservices, die ein Datenmodell teilen? Warum ist es nicht nur eins? Es fühlt sich an wie ein Modellierungsproblem eher als ein technisches – tomliversidge