2012-01-16 13 views
4

node.jsを使用してwebscoketサーバーを開発しています。コアAPIを完成させているので、サーバーのベンチマークテストとテストを開始したいメモリリークのために。私が今までに見つけた唯一のベンチマークツールはwsbenchですが、プロジェクトは古く、償却されたAPI呼び出しを使用しています。私は、プラットフォームやプラットフォームに基づいて動作しない答えや解決策に関する最新の投稿をいくつか見つけました(OS Xを使用しています)。私は実際に1年前からのものではなく、この問題の最新の解決策を探しています。benchmarking websocket server(hybi-17)node.js(0.6.7)

+0

クライアントWebSockライブラリをとり、必要なすべてを満たすテストツールを書くだけではどうですか。 Wikipediaにはライブラリの良いリストがありますhttp://en.wikipedia.org/wiki/Comparison_of_WebSocket_implementations – Zuljin

答えて

5

私はあなたがAutobahn WebSockets Protocol Test Suiteを探していると思います。それは非常に最新で包括的で、スイートはPythonを使って実装されているので、かなり移植性があるはずです。

主にクライアントとサーバーの実装の正しさをテストすることですが、セクション9(50を超える個別テスト)のすべてがパフォーマンスと負荷テストに関連しています。

8

Autobahnテストスイートは、開始するのに最適な場所です。その9.xテストは、クライアントとサーバーの両方の実装で異なるメッセージサイズ、フラグメントサイズ、TCPパケットサイズ、およびラウンドトリップ時間でパフォーマンスの優れたカバレッジを提供します。あなたの実装がテストクライアント/サーバ自体の速度に近づくにつれて、AutobahnはPythonで書かれているので、正確なメトリックを提供する能力が低下しています。

Pythonよりも高速な言語で書かれた実装のパフォーマンスメトリクスを向上させるため、私はC++ WebSocket++ libraryを使って多くのAutobahn 9.xテストを実装しています。 WebSocket ++には、一般的なストレステストクライアントも含まれています。これにより、サーバー作成者は何千もの接続でサーバーに何が起こるかをテストできます。

AutobahnとWebSocket ++はともに、2011年11月にリリースされた最終的なRFC6455 WebSocket仕様を完全にサポートしています.WebSocketは比較的新しい技術であり、それらのテストツールはまだ完全には成熟していません。 WebSocketのパフォーマンステストに関するご質問やご意見がございましたら、お気軽に私に連絡するか、Githubプロジェクトに問題を投稿してください。

免責事項:私はWebSocket ++の著者であり、Autobahnテストスイートに貢献しています。

関連する問題