【オンラインイベント】merpay Tech Talk ~ 決済基盤(Payment Platform)Backend裏話 #merpay_techtalk
統一されたAPIデザイン。支払手段によって呼び方が変わったりしない #merpay_techtalk
2020-12-03 19:45:11#merpay_techtalk Payment PlatformAPIの設計方針 他のマイクロサービスを信用しない API AS A PRODUCT Resource Oriented API Design 冪等性
2020-12-03 19:45:42「他のマイクロサービス を信用しない」という話に出てきたトークンについて、処理フローや機能について詳しく聞きたい。。。 #merpay_techtalk
2020-12-03 19:45:52他社のAPIの様子も見てみたけど大体functionalになってたけどペルペイでは新入社員などのオンボーディングコストなどを勘案してリソースオリエンテッドなAPIをgRPC上に構築した #merpay_techtalk
2020-12-03 19:49:16マイクロサービスだと基本的にリトライで結果整合性を取りに行くので冪等性と言うかリトライ安全性については常に考えている #merpay_techtalk
2020-12-03 19:50:58リトライ安全性はメルペイ社内でAPI作る時は必ず要求される #merpay_techtalk
2020-12-03 19:52:29#merpay_techtalk やっぱりこういう話は面白いよな。どういう考え方で作っているのかとかって、実際のサービスには関係ないんだけど、知っていると見えるものもあるので。
2020-12-03 19:52:56Cloud SQL 定期的にメンテになるから、ここめんどくさかった記憶ある。ただ、Spannerも視野には入れていたがコストが結構かかるという話くらいしか聞いたことない... #merpay_techtalk
2020-12-03 19:56:27ウォーターフォール、アジャイルでの開発は協議し最適な開発手法を決めることを心がけているか。こういった柔軟性大事 #merpay_techtalk
2020-12-03 19:59:36SLOのためにもオペレーションコスト減らすためにも原則として不整合に対しては自動復旧させるという方針 #merpay_techtalk
2020-12-03 20:03:05冪等性キーって何かのGUID的なものをクライアントで生成してサーバー側は同じキーが来てないかを見てるみたいなことかな。 有益なことを知った。 #merpay_techtalk
2020-12-03 20:05:07負荷テスト含め一通りのテストはちゃんとやる。外部サービス起因の予測不能エラーの時のためにミドルウェアアクセスとかでfault injectionとかもしてテストしてる。評判良かったのでgolangのライブラリに切り出されて他のチームとかでも使ってる #merpay_techtalk
2020-12-03 20:06:44Tryで失敗したら成功するまで頑張ってCancelする #merpay_techtalk
2020-12-03 20:10:58#merpay_techtalk "「CAP定理」は、分散システムにおいて以下の3つの 要素を2つしか同時に満たすことができないことを示します。 C: Consistency (一貫性) A: Availability (可用性) P: Tolerance to network Partitions (ネットワーク分断への耐性)"
2020-12-03 20:11:36