プログラミング初学者がまとめる〜pumaについてまとめてみようと思う。ざっと理解する編〜
*自身の言葉で書いてますので、間違っていることもあるかと思いますが、ご了承ください。訂正のコメントを頂けるとありがたいです。*
pumaとは
pumaとはスピードと並列性を追求したRubyのアプリケーションサーバーである。 RubyでWebサーバーを作るときの標準となっているRackに対応しています。nginxの回であった通り、nginxは単体でRackと通信ができないため、Rackと通信できるアプリケーションサーバーが必要になります。その選択肢の一つとしてpumaがあります。またrails5から、pumaがデフォルトで導入されています。
そしてwebサーバーとしての役割を果たすこともできるのがpumaの特徴です。
pumaの特徴
pumaは、ユーザーからのリクエスト受け取りとアプリケーションサーバへ処理を投げるのが速いことが特徴です。スピードと並列性を追求したものとなっています。
またマルチスレッドで動くので、プロセスを増やす必要がないため、リソースが少ない中でも効率的にリクエストをさばくことが可能になります。
マルチスレッドとは
アプリケーションのプロセスを複数のスレッドに分けて並行処理する方式のことです。つまりアプリケーションの処理を必要に応じて複数を並行して進めることができるため、処理速度と精度が向上する特徴があります。
まとめ
今回はpumaに関してまとめてみました!
よく比較されるUnicornについて次回まとめ、比較等ができたらなと考えています。
最後まで読んで頂きありがとうございました!!