Toru Masuda </ strong> </ div>
Es ist kein bewährtes Muster, aber es beinhaltet auch, was Herr Masuda selbst praktiziert hat und die Geschichte, dass er es nicht praktiziert hat, aber es könnte funktionieren.
Auszug aus Präsentationsmaterial
Die Technologie zur Realisierung von Mikrodiensten ist bereit.
- Wolke
--Container
- Designfähigkeiten
⇒ So teilen Sie die Software, um sie erweiterbar zu machen
Dies sind notwendige Bedingungen, nicht ausreichende Bedingungen.
Dieses Mal werde ich über den Teil der Designfähigkeiten sprechen
Auszug aus Präsentationsmaterial
4 Motive für Micro Service
・ Wird vom Road Balancer vertrieben
Lastverteilung
Risikodiversifikation
Datenverteilung
・ Zusammenarbeit verschiedener Dienste
Funktionsverteilung
Dieses Mal werde ich über den funktionalen Verteilungsteil sprechen
Auszug aus Präsentationsmaterial
・ Mr. Masudas grundlegender Ansatz, wenn er über MSA nachdenkt
Machen Sie mit Monolith → Modulverbesserung
↓
Prüfung der Möglichkeit einer MSA (unter Berücksichtigung einer Teilanwendung)
↓
Berücksichtigung des Übergangs (unter Berücksichtigung der Teilanwendung)
・ Die Grundlagen der Designfähigkeiten sind für Monolithen und Mikrodienste gleich.
Trennung von Interessen
Hohe Aggregation / lose Kopplung
Modularisierung
⇒ Kann sowohl für Monolith- als auch für Mikrodienste verwendet werden
Schematische Darstellung des Service
Auszug aus Präsentationsmaterial
・ Gleiches gilt für Monolithen und einen Mikrodienst
Es gibt eingehende und ausgehende
Wird von der Datenbank oder anderen Diensten über eine Datenquelle bezogen
- In MSA wird die asynchrone Verarbeitung häufig natürlicher als in Monolithen verwendet, z. B. asynchron empfangen und asynchron senden, asynchron abonnieren und asynchron veröffentlichen. Asynchron ist eine Technologie, die seit langem verwendet wird. Der Cloud-Messaging-Dienst erleichtert dies.
Die asynchrone Messaging-Technologie gibt es schon seit langer Zeit, aber der Schwellenwert für das Erstellen und Betreiben von mq für große Apps war hoch, was die Verwendung in der Cloud einfacher und damit asynchron machte. Messaging ist mehr als in der Vergangenheit zur Ware geworden.
Wie klein kann es sein
Auszug aus Präsentationsmaterial
-Theoretisch ist es eine Methodeneinheit der Java-API.
Früher gab es RMI (Remote Method Invocation). Ich habe versucht, es Methode für Methode zu tun, aber es hat nicht sehr gut funktioniert.
Früher gab es CORBA.
・ Die Grenze liegt in den Bereichen Cloud / Container / Design / Betrieb
Bis zu einem gewissen Grad zerstreuen, während Sie Erfahrungen sammeln, und mit dem nächsten Schritt fortfahren, während Sie kompetent werden. Dies hängt vom Kenntnisstand und der Erfahrung mit Cloud- / Container- / Design- / Betriebsfähigkeiten ab.
Wie klein
Auszug aus Präsentationsmaterial
・ Logische Modulaufteilung
Sogar ein Monolith kann aktiv geteilt werden, und er kann fett sein, weil er ein Monolith ist.
Kommunikation zwischen MSAs
8 Missverständnisse und Wahrheiten
Auszug aus Präsentationsmaterial
Quelle: Irrtümer des verteilten Rechnens erklärt
Es gibt ein Loch ⇒ Es gibt immer eine Art Sicherheitsloch.
4 Split-Ansätze
Auszug aus Präsentationsmaterial
Was sind die vier Schnitte?
- Geteilt durch Geschäftsfunktion (Geschäftsfunktion)
- Verben / Anwendungsfälle (User Stories können auch hier sein)
- Nomenklatur / Ressourcen (Datenmodellierung usw.)
- Domain Driven Design (DDD)
Aufteilung nach Geschäftsfunktionen
Auszug aus Präsentationsmaterial
Teilen Sie den Verkaufsprozess in 21. Das ist ungefähr diese Nummer.
Auszug aus Präsentationsmaterial
・ Große Unternehmenskrankheiten werden so wie sie sind eingeschleppt.
・ Für große Unternehmen: Die Abteilungen werden nach Geschäftsfunktionen unterteilt, um Silos zu erstellen
・ Für kleine und mittlere Unternehmen: Die Funktionen sind geteilt, aber da es nur wenige Personen gibt, dienen sie auch gleichzeitig.
・ Funktioniert es, wenn es dem vom Benutzer angegebenen "Arbeitsumfang von hier nach hier" entspricht?
・ Geschäftsfunktion und Organisation sind ein großes Thema
・ Es kann nach dem menschlichen Prozess unterteilt werden, wird jedoch zu einem Problem, wenn eine Zusammenarbeit in die entgegengesetzte Richtung erforderlich ist.
Verb / Anwendungsfall
Auszug aus Präsentationsmaterial
・ Traditioneller Weg auch mit Monolith
・ Einfache Aufteilung nach Funktionsanforderungen und Entwicklungsumfang
・ Es ist wahrscheinlich, dass Logikduplikationen / -fragmentierungen auftreten. Zum Beispiel, wenn verschiedene Teams Verkäufe tätigen und abrechnen ...
Es wird ein Mikrodienst für jede Transaktion
Es ist wahrscheinlich, dass zwischen Diensten logische Duplikationen und Fragmentierungen auftreten
Domänenlogik wie Verzweigungsbedingungen ist unterteilt
・ Charge erhöht. Es kann vorkommen, dass Inkonsistenzen im Nachtstapel festgestellt werden oder dass der Status bisher geändert werden sollte, der Stapel jedoch konsistent ist.
・ Gegenmaßnahme: Thin Use Case Service
Teilen und organisieren Sie die Logik nach Bereichen
Vermeiden Sie Doppelarbeit und Fragmentierung
Dies wird von mehreren Anwendungsfalldiensten aufgerufen
Auszug aus Präsentationsmaterial
Ressourcenorientiert
Auszug aus Präsentationsmaterial
・ Unterschiedliche Interessen sind gemischt und neigen dazu, aufgebläht zu sein. Das Bild des Aufblähens durch Angabe verschiedener Informationen an die Kundennummer.
Welt der Identifikationsnummern
Eine Mischung aus verschiedenen Anliegen und aufgebläht
⇒ Die Anzahl der Kunden, die anfangs klein waren, ist auf Hunderte gestiegen
・ MSA ist eine Welt, in der JOIN nicht durchgeführt werden kann und externe Schlüsselbeschränkungen nicht funktionieren.
・ Ich denke, dass der Monolith zu viele Informationen in der Identifikationsnummer enthält. Ist es notwendig, Managementeinheiten zu trennen? Bedenken müssen getrennt werden.
・ Es kann die entgegengesetzte Denkweise mit einem Monolithen sein. Vielleicht sollte sogar die gleiche ID getrennt werden
DDD
weiß nicht! (Lol)
Auszug aus Präsentationsmaterial
・ Domain-gesteuertes Design im Evans-Stil und [Domain-gesteuertes Design im Vernon-Stil](https://www.amazon.co.jp/dp/ In 479813161X) ist die Beziehung zwischen dem Kontext und der Subdomäne unterschiedlich.
・ Der Eindruck, dass das Evans-Buch mehr Informationen zum Entwerfen enthält.
・ Definition des Evans-Stils
Begrenzter Kontext
Umfang der Teamkommunikation
Quelle, DB-Schema usw.
・ Subdomains ändern sich ⇒ Es ist gefährlich, durch Subdomains zu teilen.
Begrenzter Kontext
Ziel
Ein Modell in einem Kontext
Ich werde überlegen, welche ich besiegen soll
Ob das Modell zusammengehalten werden soll
Gibt an, ob der Kontext aufgeteilt werden soll
Domain-gesteuertes Design "Modell"
Auszug aus Präsentationsmaterial
・ Modell ≒ Geschäftsregeln
(Es ist keine genaue Interpretation, aber im Allgemeinen richtig. Wenn Sie es so interpretieren, können Sie sehen, was Evans sagt.)
・ Es ist ein sehr effektiver Ansatz, Dienstleistungen nach Geschäftsbereichsbereichen zu unterteilen.
Transaktionszerlegungsmuster
Auszug aus Präsentationsmaterial
・ Bitte suchen Sie nach dem Material für Details.
⇒ Mir wurde gesagt, also habe ich ein wenig gesucht.
-
VETRO
-
・ [Einführung von Kamelentwurfsmustern](https://rheb.hatenablog.com/entry/camel-design-patterns)
⇒ VETRO-Muster
・ [So wenden Sie das VETRO-Muster von Camel in Mikrodiensten an](https://qiita.com/jian-feng/items/2ebaf103e50a24f8cfcc)
-
saga
-
・ [Einführung von Kamelentwurfsmustern](https://rheb.hatenablog.com/entry/camel-design-patterns)
⇒ Saga-Muster
・ [Ich habe versucht, Microservice-Transaktionen mithilfe des TCC-Musters und des Saga-Musters zusammenzufassen](https://qiita.com/nk2/items/d9e9a220190549107282)
⇒ Saga-Muster
・ [Über das Saga-Muster von Mikrodiensten
](https://qiita.com/yasuabe2613/items/b0c92ab8c45d80318420)
・ [Transaktion im Microservice [Saga]](https://www.techscore.com/blog/2018/12/05/saga-in-microservices/)
-
Asynchronisation der Statusaktualisierung (EH-SM-DSQ)
-
Ich konnte nichts Nützliches finden, als ich googelte.
- EH:Event History
- SM:State Materialize
- DSQ:Domain Specific Query
Ich habe verstanden, dass es ein Muster ist, Ereignisse als Verlauf aufzuzeichnen und Abfragen nach Zweck zu unterteilen.
・ Eine Transaktion ist bisher zu groß für Microservice.
・ Geben Sie das Stereotyp auf, dass es sich bei der Registrierung von Bestellungen um eine Transaktion handelt. Ist das wirklich der Fall? Kann es geteilt werden?
Alle Sitzungstitel, Materiallinks und Twitter
Hashtag für die gesamte Veranstaltung: #jjug_ccc
10:00-10:45
11:00-10:45
12: 00-12: 45 (Mittagssitzung)
Titel |
Moderator |
twitter |
JJUG-Mittagssitzung |
Yusuke Suzuki |
|
Entwicklungsumgebung und Anwendungsinfrastruktur in der Cloud Native-Ära(Temporär) |
Nobuhiro Sue |
|
13:30-14:15
14:30-15:15
15:45-16:30
16:45-17:30
17:45-18:30
Die Blogs der Teilnehmer
・ Ich habe am JJUG CCC 2019 Spring #jjug_ccc teilgenommen
https://www.grimrose.org/blog/2019/05/jjug-ccc-2019/
・ Ich bin zu JJUG CCC 2019 Spring #jjug_ccc gekommen
https://takeda-san.hatenablog.com/entry/2019/05/19/134053
・ Teilnahme an "JJUG CCC 2019 Spring"
http://makopi23.blog.fc2.com/blog-entry-317.html
・ JJUG CCC 2019 Spring (#jjug_ccc) - Liste der Sitzungsmaterialien
https://yujisoftware.hatenablog.com/entry/2019/05/19/040112
・ 2019-05-18 JJUG CCC 2019 Spring #jjug_ccc
https://note.mu/suwash/n/n5f5937986b25
・ [JJUG CCC 2019 Spring] Weiterentwicklung! Saubere Architektur - Sprechen unter dem Titel Neue Entwicklung ab Null
https://nrslib.com/event-after-jjug-ccc-2019-spring/
・ Ich habe am JJUG CCC 2019 Spring teilgenommen (#jjug_ccc)
https://chichi1091.hatenablog.jp/entry/2019/05/18/224111
・ Ich war im Frühjahr bei JJUG CCC 2019
https://yachiy.hatenablog.com/entry/2019/05/18/221734
・ Ich habe 20 Minuten bei JJUG CCC 2019 Spring #jjug_ccc # ccc_m5b gesprochen
http://tadashi.hatenablog.com/entry/2019/05/18/201644
・ Honda Yoshitaka / ccc_a6.md
https://gist.github.com/hondaYoshitaka/3eccf0686e9988e70c3a07cc9071809c#file-ccc_a6-md
・ Aufzeichnung des JJUG CCC 2019 Spring
https://miyakawataku.hatenablog.com/entry/20190520/1558358694
・ Wir haben die Bühne beim JJUG CCC 2019 Spring betreten
https://www.project-respite.com/jjug-ccc-2019-spring/
・ Toru Masuda Ich konnte mir "Microservice 4 Split Approach" nicht anhören, aber mir wurde gesagt, dass ich es zusammenfassen werde #jjug_ccc
https://taichiw.hatenablog.com/entry/2019/05/20/190605
・ Ich ging zu JJUG CCC 2019 Spring #jjug_ccc
https://kntmr.hatenablog.com/entry/2019/05/18/223621
・ Auf der JJUG CCC 2019 Spring haben wir den Test angekündigt und dabei verschiedene Anstrengungen unternommen! # jjug_ccc # ccc_e4
http://nihonbuson.hatenadiary.jp/entry/2019/05/20/080000
・ Ich war im Frühjahr bei JJUG CCC 2019
https://itatyo.hatenadiary.jp/entry/2019/05/20/095324
・ Zusammenfassung, um diejenigen, die "Java bezahlt" falsch verstehen, auf leicht verständliche Weise zu erklären.
https://togetter.com/li/1343743
・ JJUG CCC 2019 Frühjahrssponsoring / Bühnenbericht
https://engineering.linecorp.com/ja/blog/jjug-ccc-2019-spring-report/
・ Ich habe als freiwilliger Mitarbeiter am JJUG CCC teilgenommen! !!
http://acro-engineer.hatenablog.com/entry/2019/05/22/120000
・ JJUG CCC 2019 Spring Fellowship LT
http://www.tomokosugimoto.net/drum/other/jjug_ccc/index.html
letzte
Wir werden nach Bedarf aktualisieren, wenn Materialien hinzugefügt werden