Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

node.jsのsocket.ioの歴史的経緯にはまったのでまとめとく

More than 5 years have passed since last update.

概要

node.jsのsocket.ioにはまったのでまとめておきます

socket.ioの歴史的経緯を知る

socket.io/History.mdを参考

古くは2010年06月に0.7.0がリリース、2012年02月に0.9.0がリリースとなり、
その後2年の月日を経て2014年05月28日に1.0.0がリリースとなっている。
この経緯の為、WEB上にあるサンプルは 大概動かない
最近発売された雑誌でもない限り説明が古いことがある。
あと、0.9系は0.9.16までメモリリーク問題があったので要注意。0.9.17から解消してるそうです。
1.0系はバイナリ送信が利用出来るのでProtocolBuffersとか使えそうですね。
0.9系でのバイナリ送信はBase64で送信する必要があるので効率はいまひとつかなと。

socket.ioのサンプル

socket.io/examples/chat/を使うのがおすすめです。

各部屋に向けた送信は下記のように調整すればよさそうです

io.sockets.on('connection', function (socket) {
  socket.join('[部屋名]');
  socket.broadcast.to('[部屋名]').emit('[メッセージ]');
});

各プラットフォームの対応状況

各プラットフォームの対応状況は下記を見るとよさそうです。
コードの更新状況見て、最近更新がない場合は0.9に対応かと。
For up to date information, please head to

mbotsu
転職歴: 調理師 -> WEBエンジニア -> ゲームエンジニア -> R&D 現在はAI/IoT/xRと浅く広く活動
https://twitter.com/mb_otsu
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away