デブサミ2020【14-B-6】サービスメッシュは本当に必要なのか、何を解決するのか #devsumiB #devsumi

Yasuhiro Tori Hara[Amazon Web Services Japan] https://event.shoeisha.jp/devsumi/20200213/session/2396/ Developers Summit 2020の講演資料・参加レポート一覧: https://codezine.jp/article/detail/11981
0
チェシャ猫 @y_taka_23

自分のセッションでも引用した「分散コンピューティングの落とし穴」の話だ。#devsumi #devsumiB ja.wikipedia.org/wiki/%E5%88%86…

2020-02-14 15:40:03
たまご @tamaco9346

ネットワークの可用性が100%であるかのようなソース→あるある #devsumiB

2020-02-14 15:40:11
炒瓜(いりうり)@料理好き @freemon97452321

時系列でログ出力して追えたものが、マイクロサービスにすることでログ出力を追うのが難しくなる #devsumi #devsumiB

2020-02-14 15:40:12
pideoh @lic1990

メソッドでサービスを連携するのとネットワークで連携するのじゃ考慮点ちがう。後者は失敗前提で考えないと #devsumiB

2020-02-14 15:40:43
progrhyme @progrhyme

前方から和太鼓っぽい音が聞こえる。 #devsumiB #devsumi

2020-02-14 15:40:52
pideoh @lic1990

これ意識してもらえないはあるある #devsumiB

2020-02-14 15:41:03
asato @at_946

モノリスなアプリでもAWSでいろいろなサービスを組み合わせている時点で分散システム。 一般的にマイクロサービスはその中のアプリをさらに分割してくイメージだけど、すでにマイクロサービスやっているようなものなのか。 #devsumi #devsumiB

2020-02-14 15:41:07
YoS @17_YoSK

・サービス間通信の信頼性 ・サービス間通信の可観測性 あ、、Summitのお話がフラッシュバックしてきた。 復習だな。 #devsumi #devsumiB

2020-02-14 15:43:59
たまご @tamaco9346

サービスディスカバリ リトライ サーキットブレーカー タイムアウト 改めてうなずくし、もうあんま業務に関係ない。 #devsumiB

2020-02-14 15:44:21
hmatsu47(まつ) @hmatsu47

アプリケーションのデプロイ先は一定じゃない。 →サービスディスカバリが必要。 一時的な呼び出しの失敗。 →リトライが必要。 失敗が継続 →リトライをやめさせるサーキットブレーカーが必要。 呼び出し先のパフォーマンス悪化。 →タイムアウトが必要。 #devsumi #devsumiB

2020-02-14 15:44:27
炒瓜(いりうり)@料理好き @freemon97452321

自分たちのSLOを守るためにタイムアウト処理が必要となる そんなパターンもあるんですね… #devsumi #devsumiB

2020-02-14 15:44:48
hmatsu47(まつ) @hmatsu47

呼び出し元システムの不具合。 →スロットリングが必要。 #devsumi #devsumiB

2020-02-14 15:45:10
pideoh @lic1990

サーキットブレーカーは顧客へのレスポンス性能の確保と、障害復旧を妨げない(輻輳解消)ために入れるもの #devsumiB

2020-02-14 15:45:49
pideoh @lic1990

呼び出し元ごとにスロットリングってできるのかな?どうやって区別するんだろう。API key? #devsumiB

2020-02-14 15:46:29
pideoh @lic1990

API Keyか。そういえばそんな項目あった気がする #devsumiB

2020-02-14 15:47:01
🌸🐧かめねこ🐧🌸 @kameneko1004

どこまで生きていて、どこで死んでいるのか追えるようにしないとですね #devsumiB

2020-02-14 15:47:04
hmatsu47(まつ) @hmatsu47

異常を想定してやり直す機構も、それを止めさせる機構も、それぞれの状態を可視化する機構も大事。 全部人手でやろうとすると死ぬ。 さらに、情報のフォーマットやコンテキストがバラバラだと可視化されてても扱い辛い。 #devsumi #devsumiB

2020-02-14 15:48:25
炒瓜(いりうり)@料理好き @freemon97452321

フォーマットの統一は重要ですね ただ実装スキルに依存するためチーム内でやると筋肉実装とかになりそうなので怖い #devsumi #devsumiB

2020-02-14 15:48:57
hmatsu47(まつ) @hmatsu47

実装者がバラバラだと、フォーマットが変わったときの対処が難しくなる。 →一貫性のある方法が必要。 #devsumi #devsumiB

2020-02-14 15:49:52
pideoh @lic1990

ログ以外の方法でObservilityを確保する必要あり。様々なチームがあり、言語があり、開発レベル感の違いがある。また、出すべき項目は日々変わっていく。よって共通化は非現実的 #devsumiB

2020-02-14 15:49:58
pideoh @lic1990

共通ライブラリなんで作っちゃうと、各チームの裁量で開発ができるマイクロサービスの良さがなくなりそう。管理主体の責任も重い #devsumiB

2020-02-14 15:51:35
たまご @tamaco9346

共通ライブラリ入れるのがよい? 素直なチームばかりじゃない。 あるある! #devsumiB

2020-02-14 15:52:30
🌸🐧かめねこ🐧🌸 @kameneko1004

各言語のライブラリの更新とか辛そう #devsumiB

2020-02-14 15:52:37
YoS @17_YoSK

共通ライブラリの悲しみ ・共通ライブラリでパフォーマンス悪化。。。 ・xx言語用のライブラリがない ・移行してくらないチーム etc.. #devsumi #devsumiB

2020-02-14 15:53:00
hmatsu47(まつ) @hmatsu47

共通ライブラリを適用するスタイルでは、各チームの作業の手間やアプリケーションコードとの親和性、言語環境の不一致など色々な事情で頓挫しがち。 #devsumi #devsumiB

2020-02-14 15:53:07