夏だ!花火だ!マイクロサービスLT大会だ!

FiNCでSREやってます@kenjiszk(https://twitter.com/kenjiszk)です。

8/30にマイクロサービスに関することならなんでも話していいLT大会@FiNCを開催しましたのでそのレポートをしたいと思います。総勢12名のマイクロサービス好き(?)による楽しい会となりました。それでは早速各LTを紹介していきます。


ミニサービスアーキテクチャでハードモードな現実を乗り越え……たい by moomooyaさん

株式会社ラクスの@moomooyaさん。サービス立ち上げ時からドメイン境界を正しく切ることは難しかったり、既存のモノリスを正しく分割するのは難しいため、現実的な解として機能単位ではなく業務単位での分割方法であるミニサービスアーキテクチャに関して紹介していただきました。


Microservices 時代の開発環境 by mtsmfmさん

Quipperの@mtsmfmさん。本番環境はkubernetes、開発環境はdocker-composeで現場行っているそうですが、それでいいのか?ということで、kubernetesを用いたRailsの開発環境について紹介していただきました。


新規事業立ち上げからマイクロサービスについて考えてみる by spring_MTさん

DeNA @spring_MTさん。新規事業の立ち上げの際に、マイクロサービスにするかしないかの考察内容について紹介いただきました。新規サービスの立ち上げ時に、マイクロサービスの分割を正しく行うのは難しいので必ずしも分ける必要はないが、トランザクション境界に着目しそこは同じ塊として扱う(databaseを分ける)とのちのち幸せになれそうです。


SSRに立てたnodeサーバーを認証機能を追加してBFFに転身させた話 by daiki_miura

FiNCエンジニアインターンの@daiki_miuraさん。Server side renderingしているSPAに認証機能を導入した話と、その際に認証の管理およびServerとClientからのAPIリクエストのフローをどのように整理したかについての事例を紹介いただきました。

Microservices のお陰でECS移行が大変だった話 by kubochin

FiNCエンジニアインターンの@kubochinさん。EC2からコンテナを利用するためにECSへの移行を行っているとのこと。同じようなオペレーションを何度もする必要があるなど、マイクロサービスならではのお話や、そういった作業を自動化するための取り組みについて紹介していただきました。


マイクロサービス縦に割るか横に割るか by nabnab1

FiNCの@nabnab1さん。facebookが巨大なモノリスだったらというケースを元に、どのように分割するとキレイに分割することができるか、といったお話をしていただきました。


デプロイおじさんのお葬式 by kenjiszk

私からは、FiNCにおけるマイクロサービス環境でのデプロイについてのお話をさせていただきました。ちなみにデプロイおじさんとは、EC2を使っていた時代に作成したデプロイ用のアプリケーションの名前ですが、ECSへ移行した関係で今回無事にお役御免となり成仏していただきました。


マイクロサービス化によってクライアントが受けた恩恵 by nankiti

FiNCの@nankitiさん。今回の LTでは唯一のクライアントから見るマイクロサービスのお話でした。BFFを導入した結果どのような影響がクライアントサイドにあったのかという内容でした。

BFFはバックエンドとクライアントどちらが受け持っているか?といった質問では、もともとはGraphQLをバックエンドが担当していたがKotlinで実装し直してクライアントに渡す予定、とのことでした。


マイクロサービスのCache戦略 by kosako

Rettyの@kosakoさん。RettyではPHPで書かれた大きなモノリスをちょうどマイクロサービス化しているところとのこと。そんな中で、マイクロサービスのどの層でキャッシュを行うべきか、それに対するメリット・デメリットなどをお話いただきました。


マイクロサービスの分析基盤 by kommy

FiNCの@kommyさん。マイクロサービスならではの分析基盤の苦労に関しての発表です。マイクロサービスであらゆるデータが分散しているからこそ分析基盤がより重要になってくるとのこと。データは基本的にS3に集めてredshiftを使って分析環境を構築しています。


Building Microservices (Sam Newman) の輪読会が最高だった話 by qsona

FiNCの@qsonaさん。社内でのBuilding Microservicesの輪読会を行なった結果、マイクロサービスに関しての共通認識が広まって良かったというお話。FiNCマイクロサービス懐疑派三銃士が登場しました。

まさかの@qsonaさんの写真が撮られてませんでした!@qsonaさんごめんなさい!


マイクロサービスにおける結果整合性との戦い by ota42y

FiNCの@ota42yさん。分散系において大切な結果整合性と冪等性について発表していただきました。冪等性を担保するために作成されたgemと内部でどのように冪等性を担保しているのかといった実装面の説明をしていただきました。


LTをしてくださった皆さんにFiNCから体組成計プレゼント!

今回LT大会に参加していただいた方々に、FiNCより体組成計をプレゼントさせていただきました。FiNCアプリと連携するとこの体組成計に乗るだけで自動的に体重などのデータがアプリと連携してくれる超便利商品です。ちなみに会場となったFiNCのイベントスペースは普段100~200人規模のイベントを行なっている会場なので非常に贅沢な使い方をしています(右上写真)。


今回初めてLT大会を行いましたが、皆がテーマを持ち寄っているので懇親会も非常に盛り上がり、PCを開いてのコアな議論なども巻き起こっておりました。

今後も定期開催していきますのでご興味ある方は是非ご参加ください。