Ich möchte eine empfohlene Bibliothek vorstellen, die bei der Implementierung von Microservices mit Java verwendet werden kann. Dieses Mal habe ich die Bibliothek anhand der folgenden drei Punkte ausgewählt.
Spark Framework
Gson / Jackson
Da der Mikrodienst in Zusammenarbeit mit mehreren Diensten arbeitet, werden Nachrichten ausgetauscht. In diesem Fall ist die Konvertierung des Formats wichtig. Ich denke, dass es viele Konvertierungen zwischen "Java" (Objekt) und "Json" gibt, aber Gson wird häufig in anderen Bibliotheken verwendet (unterstützt). gson) und Jackson. Was auch immer Sie mögen, bitte. Beispielsweise verwendet eine bestimmte Bibliothek "Jackson" als Stapel (es besteht eine Abhängigkeit), aber die Verwendung von "Gson" umfasst zwei Arten von Bibliotheken für denselben Zweck (Formatkonvertierung). Es ist nicht vorzuziehen, weil es wird. Wenn Sie den gesamten Stapel betrachten, sollten Sie in diesem Fall "Jackson" auswählen.
Bean Validation
Die Bean-Validierung (JSR-303), mit der die Eingabe durch Hinzufügen einer dedizierten Anmerkung überprüft wird, ist einfach.
Da Bean Validation
eine Spezifikation ist, ist eine Implementierungsbibliothek erforderlich, um sie zu verwenden.
Hibernate-validator ist eine bekannte Implementierungsbibliothek. Wir empfehlen daher, sie zu verwenden.
**(Hinweis) Wenn Sie auf einem Java EE-Server ausgeführt werden, haben Sie die Möglichkeit, den Ruhezustand-Validator nicht zu verwenden, da sich die Implementierung der Bean-Validierung auch auf dem Server befindet. Dieses Mal führen wir den "Hibernate-Validator" unter Berücksichtigung von Microservices ein, die auch in normalen Java-Prozessen betrieben werden können. ** ** **
(Hinzugefügt am 6/10/2018)
Sql2o
Feign
Jedis
Ich denke, dass die Anzahl der Fälle, in denen "KVS (Key Value Store)" als Cache verwendet wird, zugenommen hat. Das am häufigsten verwendete von "KVS" ist "Redis", und der berühmte Java-Client ist Jedis.
Paho
Paho ist ein bekannter Kunde von MQTT
.
Wir bieten Bibliotheken für verschiedene Programmiersprachen wie Java, .net (C #, VB.net), Python usw. an.
(Ich benutze auch "Paho", wenn ich "MQTT" in anderen Programmiersprachen als "Java" verwende.)
Recommended Posts