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
Martin Sústrik - ZeroMQ / Nanomsg (WebElement #29)
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
WebElement
June 19, 2014
Programming
1
260
Martin Sústrik - ZeroMQ / Nanomsg (WebElement #29)
WebElement
June 19, 2014
Tweet
Share
More Decks by WebElement
See All by WebElement
Marián Bodnárik - Ako podnikať nielen na webe (WebElement #11 Prešov)
webelement
0
370
Tomáš Kulich - Dart (WebElement #27)
webelement
0
300
Matúš Duchoň - Chrome Apps (WebElement #4 Prešov)
webelement
0
290
Igor Hlina - Coffeescript (WebElement #26)
webelement
1
110
Milan Kurečko - Foundation (WebElement #3 Prešov)
webelement
0
280
Other Decks in Programming
See All in Programming
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
1
980
MUSUBIXとは
nahisaho
0
140
ノイジーネイバー問題を解決する 公平なキューイング
occhi
0
110
CSC307 Lecture 08
javiergs
PRO
0
670
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
130
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
180
並行開発のためのコードレビュー
miyukiw
0
290
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
200
AI時代の認知負荷との向き合い方
optfit
0
160
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
220
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
Statistics for Hackers
jakevdp
799
230k
The untapped power of vector embeddings
frankvandijk
1
1.6k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Darren the Foodie - Storyboard
khoart
PRO
2
2.4k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
120
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
140
Transcript
ØMQ / nanomsg Martin Sústrik www.250bpm.com
[email protected]
None
require 'rubygems' require 'ffi-rzmq' context = ZMQ::Context.new socket = context.socket(ZMQ::REQ)
socket.connect('tcp://localhost:5559') socket.send_string("Hello") puts socket.recv_string ('')
require 'rubygems' require 'ffi-rzmq' context = ZMQ::Context.new socket = context.socket(ZMQ::REP)
socket.bind("tcp://*:5559") while true do request = socket.recv_string ('') socket.send_string("World") end
Scalability Protocols (Messaging Patterns)
None
None
require 'rubygems' require 'ffi-rzmq' context = ZMQ::Context.new socket = context.socket(ZMQ::REQ)
socket.connect('tcp://192.168.0.1:5559') socket.connect('tcp://192.168.0.2:5559') socket.connect('tcp://192.168.0.3:5559') while true do socket.send_string("Hello") puts socket.recv_string ('') end
None
require 'rubygems' require 'ffi-rzmq' context = ZMQ::Context.new socket = context.socket(ZMQ::PUB)
socket.bind("tcp://*:5559") while true socket.send_string("Hello") sleep (1) end
require 'rubygems' require 'ffi-rzmq' context = ZMQ::Context.new socket = context.socket(ZMQ::SUB)
socket.connect("tcp://srv.example.org:5559") socket.setsockopt(ZMQ::SUBSCRIBE, "") while true do puts socket.recv_string ('') end
None
None
None
Example Multiplayer Game
None
None
None
Scaling Up (devices)
None
None
Theoretical Background
None
None
None
Work in Progress
IETF TAPS WG Coroutines in C Code Generation Monitoring Security
Transport agnostic L4 API https://github.com/sustrik/mill https://github.com/sustrik/ribosome
nanomsg.org zeromq.org