Builderscon Tokyo 2019 1日目 参加レポート

Builderscon Tokyo 2019 1日目 参加レポート

    Builderscon Tokyo 2019 の 1 日目に参加してきました。 本日は朝から晩まで参加しましたが、その中でも個人的に気になった 3 セッションを紹介します。

    Open SKT: メルペイ開発の裏側 (@kazegusuri)

    1 つめはメルペイの@kazegusuriさんによる発表です。 Open SKT はメルペイで行われているアーキテクチャ研修の名称です。

    メルペイのアーキテクチャはマイクロサービスで構成されます。 それぞれのサービスが協調して各サービスの一貫性を保証して、システム全体での一貫性を保証する必要があります。

    各サービス間の整合性は 2 相コミットしてるとのことです。 それに加えてサービスは他のサービスのデータを確認して、サービス感で発生した差分を吸収しています (reconsile)。 前者の 2 相コミットだけでも各サービスの一貫性は(理論上は)保証できるはずですが、 後から質問をしたところ reconcile は保険として実行してるみたいでした。

    そして分散システムは難しいと改めて再認識しました。

    RDB のトラブルの現場を追え! (@soudai1025)

    2 つめはオミカレの@soudai1025さんの発表です。 RDBMS (MySQL/PosgreSQL/Oracle SQL) のパフォーマンスや障害にまつわるお話でした。

    内容は RDBMS における「スロークエリ」「不正データ」「パフォーマンス」「障害」の 4 つのテーマに別れてました。 自分は RDBMS の知識といえば、SQL を利用できるけどパフォーマンスチューニングなどの深いところには踏み入れたことが無いというレベルでした。 そんな自分にもとてもわかりやすい内容で、なぜパフォーマンスが出ないかなどの理由もきちんと説明されてました。

    また全体的に感じたのは、RDB エンジンの違いやバージョン間の差分などもスラスラと口からでてきて、 現場で長く RDBMS を触ってるんだなぁと思いました。

    現在フロントエンドに欠かせない webpack と Babel を理解しよう (@__sakito__)

    3 つめはサイボウズの@__sakito__さんです。 webpack と Babel のお話でした。

    自分自身も Vim Vixen で Babel と webpack を使ってますが、構成が難しすぎていつも雰囲気で使ってました。 そんな自分にもわかるような、内部処理や Babel のビルドプロセスなど詳しく紹介されてました。 また Babel がトランスパイルするとき AST に一度落としてから処理するのを見ると、言語処理などの計算機科学の知識がこんなところでも役に立つんだなと思いました。

    内部構造だけでなく Babel や webpack の歴史も大変興味深かったです。 昔は 6to5 だったが後にトランスパイラとしての機能が多くなった Babel。 webmake で Code Splitting の提案が取り入れられずプロジェクトが分離した webpack。 なんとなく使ってるルールも生まれた経緯とかを知るとまた違った視点で見えてきます。

    まとま

    以上 Builderscon Tokyo 2019 1 日目の参加レポートでした。 昨年同様 Web サービスに関するお話が大半でしたが、様々なレイヤーのお話が聞けてよかったです。 明日も参加する予定なので、2 日目の参加レポートも楽しみにしてください!


    Profile picture

    Shin'ya Ueoka

    B2B向けSaaSを提供する会社の、元Webエンジニア。今はエンジニアリング組織のマネジメントをしている。