Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Martin Sústrik - ZeroMQ / Nanomsg (WebElement #29)
Search
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
290
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
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
120
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
200
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
Developing static sites with Ruby
okuramasafumi
0
260
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
120
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
140
TUIライブラリつくってみた / i-just-make-TUI-library
kazto
1
370
AIコーディングエージェント(NotebookLM)
kondai24
0
170
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
9
1.1k
dotfiles 式年遷宮 令和最新版
masawada
1
750
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
7k
JETLS.jl ─ A New Language Server for Julia
abap34
1
340
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.1k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
Done Done
chrislema
186
16k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Context Engineering - Making Every Token Count
addyosmani
9
500
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
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