こんにちは、アプリケーションエンジニアの id:aereal です。
来たる10月8日に Scala 関西 Summit という関西最大級の Scala カンファレンスが大阪で催されます。
このカンファレンスにおいて、「はてなにおけるマイクロサービスと Scala」と題してはてなにおいて Scala でマイクロサービスを開発した経験に基づく持続可能なサービスの分割や結合にまつわる考察や知見をお話しさせていただきます。
内容について
以下に CfP に記載したトークの概要を引用します:
はてなにおける Scala でマイクロサービスを開発した事例についてご紹介します。
サーバー監視サービスの Mackerel (https://mackerel.io/) や現在進行中のはてなブックマークリニューアルで主たる言語として Scala を採用しているはてなで、新たなマイクロサービスの開発を Scala で進めました。
先行するプロジェクトの知見を活かして DDD (ドメイン駆動設計) を更に洗練し実践するために、ユースケース駆動設計を導入し漸進的な分析や、ビルドプロジェクト構成やプログラミング要素技術に関して様々な工夫をしています。
過去のはてなにおける統合パターンの歴史を踏まえつつ、なぜそう至ったのかという背景まで含めた持続可能なマイクロサービスの設計についてご紹介します。
はてなは今年で創業15周年を迎えました。成長と拡大に伴い、現在稼動しているサービスは内部向けのものを含め多数・多岐に渡っています。
完全に独立し単独で役目を果たすサービスは稀で、他のサービスと連携して役目を果たすことがほとんどです。サービス同士を結合する手法もその時々で模索し試行錯誤を重ねてきました。
現在、はてなでは結合のパターンとしてマイクロサービスを HTTP で繋ぐ手法が増えつつあります。 そこに至る背景や過去の結合パターンを振り返りますので、これからマイクロサービス化を検討している方や既にマイクロサービス化し運用されている方にとって、興味深い内容となるでしょう。
また Perl を主たる言語として採用してきたはてながなぜ Scala を選んだかについても触れますので、いわゆる LL を採用してきたが Scala を検討している方にも言語選択の実例として有意義ではないかと思います。
会場でお会いしましょう
既に参加登録が始まって おります。ぜひ参加いただき足を運んで聞いてみてください。会場でお会いできることを楽しみにしています!