Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Socket.IO 1.0 Client for Javaの紹介
Search
Naoyuki Kanezawa
July 03, 2014
Technology
5
1.7k
Socket.IO 1.0 Client for Javaの紹介
Socket.IO Meetup in Tokyo
Naoyuki Kanezawa
July 03, 2014
Tweet
Share
More Decks by Naoyuki Kanezawa
See All by Naoyuki Kanezawa
Introducing Now and Next.js
nkzawa
12
5.4k
WebSocketの圧縮機能とSocket.IO
nkzawa
5
8.6k
Socket.IO 1.0の変更点・内部的な話
nkzawa
20
9.2k
Other Decks in Technology
See All in Technology
勝手に!深堀り!Cloud Run worker pools / Deep dive Cloud Run worker pools
iselegant
2
430
今日からはじめるプラットフォームエンジニアリング
jacopen
4
230
アジャイル脅威モデリング#1(脅威モデリングナイト#8)
masakane55
3
230
AWS全冠芸人が見た世界 ~資格取得より大切なこと~
masakiokuda
5
6.3k
ガバクラのAWS長期継続割引 ~次の4/1に慌てないために~
hamijay_cloud
1
270
日経電子版 for Android の技術的課題と取り組み(令和最新版)/android-20250423
nikkei_engineer_recruiting
0
410
30代からでも遅くない! 内製開発の世界に飛び込み、最前線で戦うLLMアプリ開発エンジニアになろう
minorun365
PRO
11
3.2k
Writing Ruby Scripts with TypeProf
mame
0
170
MCPを活用した検索システムの作り方/How to implement search systems with MCP #catalks
quiver
12
6.8k
Devinで模索する AIファースト開発〜ゼロベースから始めるDevOpsの進化〜
potix2
PRO
8
3.5k
ソフトウェア開発現代史: "LeanとDevOpsの科学"の「科学」とは何か? - DORA Report 10年の変遷を追って - #DevOpsDaysTokyo
takabow
0
390
SREからゼロイチプロダクト開発へ ー越境する打席の立ち方と期待への応え方ー / Product Engineering Night #8
itkq
2
930
Featured
See All Featured
Designing for humans not robots
tammielis
252
25k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.6k
YesSQL, Process and Tooling at Scale
rocio
172
14k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
178
53k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
30k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
530
RailsConf 2023
tenderlove
30
1.1k
4 Signs Your Business is Dying
shpigford
183
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Raft: Consensus for Rubyists
vanstee
137
6.9k
Transcript
Socket.IO 1.0 Client for Javaの紹介 Socket.IO Meetup in Tokyo
About Me @nkzawa • フロントエンド・エンジニア • Javaプログラマではありません ... • I
♥ Node.JS and Socket.IO
socket.io-client.java
socket.io-client.java • Socket.IO v1.0 対応のJava client • Node clientをJavaへ移植 •
Android support github.com/nkzawa/socket.io-client.java
Over a year ago ... Socket.IO 1.0のリリース前から存在する
Motivation • Socket.IO 1.0のアップデートで、既存clientライ ブラリが使用できなくなった。 • Node clientとのより高い互換性のため。
Full featured • Upgrade transports • Sending binary data •
Options • Auto reconnection … Node clientの全機能をサポート
Similar Interface // Node client var socket = io(“http://localhost”); //
Java client Socket socket = IO.socket(“http://localhost”);
Similar Interface // Node client socket.emit(“myevent”, “hi”); // Java client
socket.emit(“myevent”, “hi”);
Similar Interface // Node client socket.on(“myevent”, function() {}); // Java
client socket.on(“myevent”, new Emitter.Listener() { @Override public void call(Object… args) {} });
Architecture • emitter.java (EventEmitter) • engine.io-client.java • socket.io-client.java 構成や中のロジックがNode clientと同じ
Architecture • 本家Node clientの新機能やBug Fixの反映が容易。 • Java clientで行った修正をNode clientにfeedbackできる。 •
Node clientと同程度にstable。 Node ⇔ Java
Single Threaded 非同期以外の全ての処理が一つのスレッドで実行される。 All non-background processes run on a particular
thread. • No synchronized keyword • Simple and robust • マルチスレッドの厄介な問題を避けることができるので、安 定して動作する。
Released on Maven Central
thanks <3