この記事はOrigami Advent Calendar 2016二日目の記事になります。 Origamiは主にモバイルアプリを提供している会社ですが、その裏側では様々なバックエンドサービスが動いています。今まで個々のサービスはREST APIを通じてお互いに通信を行っていましたが、最近gRPCの導入をスタートしました。本投稿では、その導入経緯について簡単にご紹介したいと思います。 以下、簡単なgRPCのご紹介・導入の動機・導入にあたっての懸念点・現状の導入状況について順に説明していきます。 1. gRPCとは? gRPCは、ネットワーク上に存在する異なるウェブサービス間でRPC(Remote Procedure Call)を実現するためのフレームワークです。gRPCを使うと、図1に示すようにサービスに実装したいメソッドをprotoファイルという定義ファイルに記述することで、サーバ実装・ク
![社内のバックエンド開発にgRPCを導入してみた - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/d41198681abd80b4ed3d7f2b51e424457e32092f/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Fadvent-calendar-ogp-background-f625e957b80c4bd8dd47b724be996090.jpg%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUU3JUE0JUJFJUU1JTg2JTg1JUUzJTgxJUFFJUUzJTgzJTkwJUUzJTgzJTgzJUUzJTgyJUFGJUUzJTgyJUE4JUUzJTgzJUIzJUUzJTgzJTg5JUU5JTk2JThCJUU3JTk5JUJBJUUzJTgxJUFCZ1JQQyVFMyU4MiU5MiVFNSVCMCU4RSVFNSU4NSVBNSVFMyU4MSU5NyVFMyU4MSVBNiVFMyU4MSVCRiVFMyU4MSU5RiZ0eHQtY29sb3I9JTIzM0EzQzNDJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDbWlkZGxlJnM9Y2NiZTBiNzZkYzFmOTViZjI3Yzg5MTMyNjE0NjUyNzA%26mark-x%3D142%26mark-y%3D151%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbm96YXEmdHh0LWNvbG9yPSUyMzNBM0MzQyZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWFlMWEyM2FiMmNmMmE2YTM5YzIzZTUwZjJmNjU1N2Ex%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D17c2aba72c3c4c64cbc97a3595ef8cd4)