Lagom erstellt standardmäßig zwei Module für jeden Microservice - API und Implementierung.Microservices teilen in Lagom
Ist es möglich, einen Microservices in 3+ Module zu teilen?
Lagom erstellt standardmäßig zwei Module für jeden Microservice - API und Implementierung.Microservices teilen in Lagom
Ist es möglich, einen Microservices in 3+ Module zu teilen?
Absolut. Sie würden dies genauso tun, wie Sie es mit jedem anderen Java- oder Scala-Projekt tun würden: Erstellen Sie ein Teilprojekt, das eine interne Bibliothek ist, die in Ihrem Service enthalten ist.
Für ein Beispiel dieses Blick auf die Online Auction Java Beispiel Lagom Projekt. Insbesondere die Unterprojekte security
und tools
. Diese sind in andere Dienste unter Verwendung der dependsOn
Methode in build.sbt
enthalten.
Zum Beispiel:
lazy val itemApi = (project in file("item-api"))
.settings(commonSettings: _*)
.settings(
version := "1.0-SNAPSHOT",
libraryDependencies ++= Seq(
lagomJavadslApi,
lombok
)
)
.dependsOn(security, tools)
In diesem Fall ist es das API-Projekt, das auf den zusätzlichen Bibliotheken abhängt, aber man konnte die gleiche Sache mit Ihrem Implementierungsprojekt tut Bibliotheken zu verwenden, die nicht durch die benötigt werden, API. Beachten Sie, dass das Implementierungsprojekt auch von der entsprechenden API abhängt, sodass alle Abhängigkeiten der API von der Implementierung übernommen werden.
Was wäre, wenn ich die Implementierung in zwei Teile teilen möchte, zum Beispiel item-impl und item-impl2? Ist das möglich? Wenn ja, würde es Sinn machen? – ashofthephoenix
Ich bin mir nicht sicher, ob es Sinn macht. Was versuchst du zu erreichen? –
Der hinter dieser Idee stehende Mensch möchte die Implementierung in zwei Teile unterteilen, deshalb würde er gerne wissen, ob es möglich ist, es auf diese Weise zu teilen. – ashofthephoenix