Pitch本セッションではGoを使ったWebシステムをどのように効率化していけば良いのかを、弊社DeNAのサマーインターンシップの課題を例に、その課題作成担当のひとりである私が30分で端的にわかりやすく解説します。DescriptionGoはLL(Lightweight-Language)が主たる実装言語とされていたWeb業界において高速な言語と評価されています。実際に、コンピューティングの効率はLLと比較すると大変良い性能を発揮するケースがほとんどでしょう。その一方でWebシステムは基本的にはデータストレージとのI/Oがその処理の中心となることがほとんどでしょう。リクエストを処理する全体時間のうちコンピューティングに割く時間は限定的です。コンピューティングの高速化だけを期待してGoを導入しても、Webシステムのパフォーマンスに対して与える影響は限られてしまう場合が多いでしょう。GoroutineとChannelの仕組みをうまく活用することで、様々なケースに対してioの面でも効率的な処理を簡単に記述できることもまた事実です。本セッションではGoを使ったWebシステムをどのように効率化していけば良いのかを、弊社DeNAのサマーインターンシップの課題を例に、その課題作成担当のひとりである私が30分で端的にわかりやすく解説します。