トップサービス導入事例強み開発ブログよくある質問会社案内 お問い合わせ
Dev Blog

RustとPHPのパフォーマンス比較

■概要 Rustが早いと評判なので、本当にそうなのか実験してみる。 「Rust + Actix_web」と「PHP + Laravel」でAPIサーバとしてどれくらいパフォーマンスが変わるのかテスト。

・負荷をかけるマシンと負荷を受けるマシンは別で用意。 ・負荷を受けるマシンに、RustとPHP環境を作る。同じマシンなので、スペック差はなし。 ・負荷ツールとしてはk6を使う。 ・POSTリクエストを投げ、簡単なJSONデータをレスポンスとして返すAPIを作ってパフォーマンスチェック。

■バージョン情報 [Rust] Rust・・1.73.0 Actix_web・・0.13.1

[PHP] PHP・・8.2.11 Laravel・・10.29.0

■レスポンスデータ 簡単なJSON {“status”:“0”,“message”: ""}

■負荷内容 k6を使って、300人の同時アクセスを30秒間かける

■結果 ・http_req_durationで比較すると Rustの方が100倍近く早い。 ・指定の秒数以内で正常に返ってくるリクエスト数ではRustの方が50倍近く多い。

k6によるRustとPHPの負荷テスト結果比較

APIサーバとして立てるならRustの方が圧倒的にパフォーマンスが良い。 不特定多数のユーザがアクセスして即時性が求められるサービスであれば、クライアント側はVue.jsやFlutter等で作って、サーバ側はRustで作ってAPIで繋ぐ、という構成が良いと思う。

管理者画面等で即時レスポンスが求められないようなものであれば、開発のしやすさ・技術者の多さから「PHP+Laravel」で良いと思う。