Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

課題 現在、作っているサービスではsocket.ioを使って作ったWebSocketサーバをELB経由で使っています。 開発環境はELB配下にEC2が1台で、本番環境は複数台です。 これ、どちらも正しく動いているように見えていたんですが、最近セットアップした本番環境の方でWebSocketへのUpgradeがうまくいっておらず、pollingで動いていることに今日気がつきました。 サービスとしてはまぁ一応問題はないんですが、WebSocketで動いていると思っていたものが実はPollingだったというのはわりかし衝撃です。 原因 なんでやねんと思ってググるとわりと簡単に原因に行き当たりました。公式ドキュメントで思いっきり説明されています。 日本語だとこの辺でが参考になります。 Express / Socket.IO をスケールアウトしてみよう Socket.IO or WebSocket
よくある負荷テストは弊社ではJMeterを使ってやることが多いです。 通常のHTTPリクエストならば問題無いと思います。しかしWebSocketを利用する場合は少し面倒な感じがしました。 ##Socket.ioの負荷テスト @nulltaskさんにiframeで確認すると良いというアドバイスを受けました。全然思いつきませんでした。 Webサイトへのアクセス負荷とSocket.ioのアクセスを分けるためにサーバーを分けています。 ##同時アクセスオンリーなテスト Amazon EC2 host: hogehoge-ec2.amazonaws.com port: 5000 console.log('接続数取得テスト'); var fs = require('fs'); var app = require('http').createServer(function(req, res) { res
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く