イベント駆動型マイクロサービスを飼いならす方法

イベント駆動型マイクロサービスを飼いならす方法

最新のマイクロサービスアーキテクチャは、イベント駆動型、リアクティブ、および振り付け(オーケストレーターによる集中制御とは対照的)であるため、緩く結合され、簡単に変更できます。

TL; DR:ああ、いや!イベントの流れを理解し、管理する上で障害に直面します。

この記事では、マイクロサービスの振り付けに関する私の経験を要約し、このアプローチのさまざまな障害と影響を指摘します。私は典型的なビジネス例である「顧客のオンボーディング」プロセスを使用しています(業界によっては、アカウントの開設と聞くかもしれません)。以下に示すイベントキューでは、Apache Kafkaを使用していますが、別のスタックを使用しても心配しないでください。同じ概念が適用されます。





マイクロサービスの振り付け



次のサービスとイベントが振り付けシステムを形成するとします。



イベント駆動型マイクロサービスを飼いならす方法

このアプローチを使用するときに発生する主な障害は、次の質問で説明できます。



  • イベント流れ変更するにはどうすればよいですか?
  • ? ?
  • SLA ? - ? ? ?
  • (, )?


, .







, . - . , , .



イベント駆動型マイクロサービスを飼いならす方法



.



, , . :



イベント駆動型マイクロサービスを飼いならす方法



. , .



. , . , . - .





?



, . - « », , . : “ ”, : “, , , ”. “ ‘ ’?”:



, . , , . , , . , — , . , , , . , , .

イベント駆動型マイクロサービスを飼いならす方法



InfoQ (. “ ”) :



  1. ( Zipkin Jaeger)
  2. ( Elastic)
  3. ( ProM)
  4. ( Camunda)


, , , . . . Elastic — , . , - . , .







.



イベント駆動型マイクロサービスを飼いならす方法



“ ” .



イベント駆動型マイクロサービスを飼いならす方法



.



イベント駆動型マイクロサービスを飼いならす方法



SLA, :



イベント駆動型マイクロサービスを飼いならす方法



:



イベント駆動型マイクロサービスを飼いならす方法



: ? ( ), .



, :



イベント駆動型マイクロサービスを飼いならす方法



, :



イベント駆動型マイクロサービスを飼いならす方法



Kafka Summit San Francisco 2018 (. “ Kafka Zeebe”), .



. “: .”



, , .





SLA



. ?



, . , . ( “ ” QCon London; . “ BPM ”).



イベント駆動型マイクロサービスを飼いならす方法



(Java Spring Boot) “3 ”, Camunda, , ( GitHub). , .



, , . - ! , SLA , SLA.



, .



イベント駆動型マイクロサービスを飼いならす方法





. “ ”. , ! . , -, -. .



“ ”, - , , , - , .



, . , . , , .



イベント駆動型マイクロサービスを飼いならす方法





, , , , .



イベント駆動型マイクロサービスを飼いならす方法

, , “” SOA BPM. . . , . , , GitHub.







, :



イベント駆動型マイクロサービスを飼いならす方法



  • , , “ ”. , . .
  • , . , API . , , .


. , , -, .







. , , — , . , : . , , .





この投稿はもともとInfoWorldで公開されました最近、QCon NYC (プレゼンテーション)でこのトピックについて講演しました




All Articles