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
Zeromq: Mutant socket invasion
Search
whitmo
February 14, 2014
Programming
1
100
Zeromq: Mutant socket invasion
Intro to 0mq given to pynash 2014-02-13
whitmo
February 14, 2014
Tweet
Share
More Decks by whitmo
See All by whitmo
'strap
whitmo
1
60
Other Decks in Programming
See All in Programming
チームのテスト力を鍛える
goyoki
4
1.2k
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
3
510
AI Agents: How Do They Work and How to Build Them @ Shift 2025
slobodan
0
120
AIエージェント時代における TypeScriptスキーマ駆動開発の新たな役割
bicstone
4
1.1k
CSC305 Lecture 01
javiergs
PRO
1
380
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
290
Deep Dive into Kotlin Flow
jmatsu
1
430
Web技術を最大限活用してRAW画像を現像する / Developing RAW Images on the Web
ssssota
2
630
大規模アプリにおけるXcode Previews実用化までの道のり
ikesyo
0
800
CSC509 Lecture 02
javiergs
PRO
0
360
「社内LT会」を1年続けてみた! / Our Year-Long Journey of Internal Lightning Talks
mackey0225
1
110
パフォーマンスチューニングで Web 技術を深掘り直す
progfay
18
4.6k
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Facilitating Awesome Meetings
lara
56
6.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
830
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Scaling GitHub
holman
463
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Transcript
ØMQ Mutant Socket Invasion http://github.com/whitmo/0mq-talk
Who am I Systems Engineer at SurveyMonkey Python user since
2002, python 2.2 Author of PoachEggs http://github.com/whitmo @whit Zope/Plone Survivor
an opinionated approach to messaging ØMQ is
ØMQ is not • A queue • A direct substitute
for a message broker • An instant pancea for scaling problems
A library providing a socket-like api hiding alot of annoying
boilerplate for sane communication between parallel or concurrent executing code
Polyglot • binding to C++ libs in most languages •
native bindings in .net, F#, java • nullmq work alike for browser js
serialization agnostic
Locational Transparency • IPC • TCP • PGM Not a
neutral carrier (in general)
Easy Actors
Python (f*ck yeah) • pyzmq • pyczmq
simple message
Multi part envelope
Messaging Legos • REQ - REP • PUSH - PULL
• PUB - SUB • ROUTER, DEALER and friends
REQ Syncronous request
PUSH - PULL Pipeline / Fan out
REP Syncronous reply
PUB - SUB Broadcast and subscription
DEALER Envelope aware nonblocking IO
ROUTER Envelope aware nonblocking IO that routes responses
Request/Response • REQ to REP • DEALER to REP •
REQ to ROUTER • DEALER to ROUTER • DEALER to DEALER • ROUTER to ROUTER
Show me the code already
Python projects • pyre • salt • ansible • circus
• locust • fedmsg • ipython • zerorpc • zarkov • brubeck