この記事は「Hacobell Developers Advent Calendar」ー 8日目の記事です。 はじめに 「あの言語の並行処理って、結局どう動くんだっけ?」 日々の開発業務に追われる中で、ふと立ち止まってしまうことはありませんか?現代のアプリケーション開発において、マルチコアCPUの性能を最大限に引き出し、ユーザーに快適なレスポンスを返すために並行処理の理解は不可欠です。 しかし、使用する言語によって、そのアプローチや内部的な挙動は驚くほど異なります。 本記事では、Node.js, Python, Ruby, Goをピックアップし、それぞれの並行処理モデルが「CPUバウンドなタスク」と「I/Oバウンドなタスク」に対してどのように振る舞うのか、具体的なコード例を交えながらその違いを再整理します。 対象読者 本記事は以下のような方を想定しています。 複数の言語を日常的に使用している