LINE Engineering Blog official account
LINEとマイクロサービス LINEのアプリは、トークをはじめとして、電話、ショップ、公式アカウントなど、多数のサービスで構成されていますが、これらのサービスはモノリシックな単一のシステムとして開発されているわけではありません。それぞれ独立したシステムとして開発・運用され、お互いにAPIを介してコミュニケーションする、いわゆるSOAやマイクロサービスと呼ばれるアーキテクチャになっています。 本エントリでは、大規模なマイクロサービス環境において、システムのトレーサビリティを向上させるためのLINEバックエンドの取り組みを紹介します。 マイクロサービスの課題 最近よく耳にするマイクロサービスですが、その利点は、システムを扱いやすい小さな部分にわけ、疎結合にすることで、全体としては巨大なシステムであってもそれぞれのサービスは独立してスピーディーに発展できる点にあると思います。 一方、リクエストが複数のサービスにまたがって処理されるため、リクエストの処理全体を追跡する能力(トレーサビリティ)が低下するというリスクが生じます。例えばあるリクエストのレイテンシの悪化を調査したいというような場合、そ