こんにちは、高木です。

"force new connection"オプションは指定されましたか?

- 高木


2012/8/27 uchida75cm <[email protected]>:
> @hakoberaさん
> やりたい負荷テストは、おしえて頂いた方法で実現できそうです!
> ありがとうございます。
>
> socket.io-clients側のtransportのoptionを指定してみたのですが、
> うまくxhr-pollingで接続できず、タイムアウトになってしまう状況です。
>
> 環境は下記のような環境です。
> OS: CentOS release 5.7 (Final)
> Node: v0.6.19
> Socket.IO: v0.9.10
> Socket.IO-Client: v0.9.10
>
> いくつか試したパターンは下記のような結果でした。
> client                  -->   server
> 指定なし            -->  指定なし              (websocketで問題なく動作)
> 指定なし            -->   xhr-polling指定    (タイムアウト)
> xhr-polling指定   -->  指定なし              (websocketに切り替わって動作)
> xhr-polling指定   -->  xhr-polling指定     (タイムアウト)
>
> ※ 動作したと判断している場合は、「任意に指定しているイベントのやりとりができた」
>  という状態です。
> ※ タイムアウトになる場合も、server側のログでは、authorizationを通り、
>  socket.idが発行されているようでした。
>
> nodeやmoduleのバージョンでうまく動いていないかもしれないので、
> バージョンなどを変えてもう少し触ってみます。ソースなども少し追ってみます。
>
> 何か進展があればまたこちらに書きたいと思います。
> また相談させて頂くかもしれませんが、よろしくお願いします。
>
>
>
>
>
>
>
> 2012年8月27日月曜日 16時48分03秒 UTC+9 hakobera:
>>
>> 本多@hakobera です。
>>
>> 複数の transport が混在した環境をテストしたいというのであれば、
>> transport 層を固定したクライアントを option 指定で別々に作れば良いのではないでしょうか。
>>
>> var uri = 'http://domain.com';
>>
>> // for WebSocket
>> var socket_ws =  io.connect(uri, {
>>   transports: [ 'websocket' ],
>>   'force new connection': true
>> });
>>
>> // for XHR-Polling
>> var socket_xhr =  io.connect(uri, {
>>   transports: [ 'xhr-polling' ],
>>   'force new connection': true
>> });
>>
>> 各オプションの詳細は以下を参照してください。
>> https://github.com/LearnBoost/socket.io-client#options
>>
>> force new connection はマニュアルに書いてないですが、
>> これ書かないと、同じURLの場合にコネクションが使いまわされてしまい、
>> 何個ソケット作っても実質1クライアントで負荷テストになりまし、
>> 2つめ以降の options の設定が効きません。
>>
>>
>> https://github.com/LearnBoost/socket.io-client/blob/master/lib/io.js#L192-200
>>
>> 2012年8月27日 16:21 uchida75cm <[email protected]>:
>> > こんにちは、uchida75cmといいます。
>> >
>> > Socket.IOサーバを使ったサービスの負荷テストをしたいと考えています。
>> > transportsがwebsocketだけの場合には、socket.io-clientsなどで、
>> > 複数接続を行い、検証することができるかと思うのですが。
>> >
>> > IEなど、xhr-pollingを利用するブラウザが混ざってくるような場合の環境を
>> > シミュレーションして、負荷テストする方法はないでしょうか。
>> >
>> > 何か良い方法があればご教授いただけると幸いです。
>> > よろしくお願いします。
>> >
>> > --
>> >
>> >
>> >
>
> --
>
>
>

-- 



メールによる返信