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
2
97
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
57
Other Decks in Programming
See All in Programming
Amazon SQSコンシューマー疎結合への旅 - 出張! #DevelopersIO IT技術ブログの中の人が語る勉強会 #3
quiver
0
220
Behind VS Code Extensions for JavaScript / TypeScript Linnting and Formatting
unvalley
5
870
Goのエラースタックトレースの歴史と今後
sonatard
6
600
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
120
ゆるい個人開発のススメ
kuroppe1819
10
980
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
190
新宿ダンジョンを可視化してみた
satoshi7190
2
210
Designing for tomorrow's programming workflows
honnibal
PRO
2
120
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
250
Build with AI 2024 Seoul - 제로부터 시작하는 Flutter with Gemini 생활 - 박제창
itsmedreamwalker
0
200
From Spring Boot 2 to Spring Boot 3 with Java 22 and Jakarta EE
ivargrimstad
0
1.1k
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
850
Featured
See All Featured
How to name files
jennybc
64
93k
Docker and Python
trallard
33
2.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
259
12k
Clear Off the Table
cherdarchuk
83
310k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
What the flash - Photography Introduction
edds
64
11k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
What's in a price? How to price your products and services
michaelherold
237
11k
How GitHub (no longer) Works
holman
304
140k
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