HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
0rpc
zerorpc-python
Python2012–2013
0rpc / zerorpc-python

zerorpc-python

zerorpc for python

5Distinct people
9Mentions
0Explicit recommenders
3.2KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

zerorpc for python

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 11:56:56 AM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month9 dated mentions

Observed mentions: 2012-03-27 15:21:06 UTC to 2013-07-23 05:07:22 UTC.

01232012-03-01 00:00:00 UTC to 2012-04-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 commentsMar 20122012-04-01 00:00:00 UTC to 2012-05-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2012-05-01 00:00:00 UTC to 2012-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2012-06-01 00:00:00 UTC to 2012-07-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2012-07-01 00:00:00 UTC to 2012-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2012-08-01 00:00:00 UTC to 2012-09-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2012-09-01 00:00:00 UTC to 2012-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2012-10-01 00:00:00 UTC to 2012-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2012-11-01 00:00:00 UTC to 2012-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsNov 20122012-12-01 00:00:00 UTC to 2013-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2013-01-01 00:00:00 UTC to 2013-02-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2013-02-01 00:00:00 UTC to 2013-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2013-03-01 00:00:00 UTC to 2013-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2013-04-01 00:00:00 UTC to 2013-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2013-05-01 00:00:00 UTC to 2013-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2013-06-01 00:00:00 UTC to 2013-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2013-07-01 00:00:00 UTC to 2013-08-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsJul 2013

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Mar 20122012-03-01 00:00:00 UTC2012-04-01 00:00:00 UTC211
Apr 20122012-04-01 00:00:00 UTC2012-05-01 00:00:00 UTC303
May 20122012-05-01 00:00:00 UTC2012-06-01 00:00:00 UTC000
Jun 20122012-06-01 00:00:00 UTC2012-07-01 00:00:00 UTC202
Jul 20122012-07-01 00:00:00 UTC2012-08-01 00:00:00 UTC000
Aug 20122012-08-01 00:00:00 UTC2012-09-01 00:00:00 UTC101
Sep 20122012-09-01 00:00:00 UTC2012-10-01 00:00:00 UTC000
Oct 20122012-10-01 00:00:00 UTC2012-11-01 00:00:00 UTC000
Nov 20122012-11-01 00:00:00 UTC2012-12-01 00:00:00 UTC000
Dec 20122012-12-01 00:00:00 UTC2013-01-01 00:00:00 UTC000
Jan 20132013-01-01 00:00:00 UTC2013-02-01 00:00:00 UTC000
Feb 20132013-02-01 00:00:00 UTC2013-03-01 00:00:00 UTC000
Mar 20132013-03-01 00:00:00 UTC2013-04-01 00:00:00 UTC000
Apr 20132013-04-01 00:00:00 UTC2013-05-01 00:00:00 UTC000
May 20132013-05-01 00:00:00 UTC2013-06-01 00:00:00 UTC000
Jun 20132013-06-01 00:00:00 UTC2013-07-01 00:00:00 UTC000
Jul 20132013-07-01 00:00:00 UTC2013-08-01 00:00:00 UTC101

What Hacker News says

9 sources
+1 on sticking to DEALER/ROUTER on top of a green-thread system like gevent. This is how zerorpc works [1], and it is the backbone of the dotCloud platform. Also note that most of the time PUB/SUB and PUSH/PULL are not a good idea either. The same results can be usually be achieved by returning a stream on top of ROUTER/DEALER (this is what zerorpc does). The performance gains of custom topologies are great in theory, but in a typical modern web or mobile stack, they are not worth the extra effort and lack of flexibility. The single best change we made to dotCloud's architecture was move away from custom topologies and stick to DEALER/ROUTER. [1] http://github.com/dotcloud/zerorpc-python
In ZeroMQ instead of HTTP, for internal services
Zerorpc (http://github.com/dotcloud/zerorpc-python) uses msgpack as its primary serialization format. Among other things it is significantly more efficient for floating point data. At dotCloud we use it to move many millions of system metrics per day, so it adds up. Also worth noting: msgpack maps perfectly to json, so there's nothing keeping you from translating it to json on its way to the browser, where json is indeed a better fit. In practice this doesn't affect performance since you typically need to parse and alter the message at the browser boundary anyway, for some sort of access control.
In My thoughts on MessagePack
Ironically dotCloud started out in 2008 as a very similar project, with the same lofty goals. We had VM templating and versioning (https://github.com/dotcloud/cloudlets), cross-infrastructure deployment (https://bitbucket.org/dotcloud/vm2vm), various goodies based on container virtualization, copy-on-write filesystems (https://github.com/dotcloud/aufs.py), and an orchestration layer to tie it all together (I found an old fork at https://bitbucket.org/Foi3GraS/dotcloud). It powered various 3d-party "XaaS" throughout 2009 - here's a French provider that still seems to be alive: http://www.diva-cloud.com/softwares Then in 2010 we joined YC, and actually tested our claim that "you can make it publicly available as a service!". Within 6 months we had rewritten 100% of the codebase around the real constraints of deploying and being responsible
Read the rest
for tens of thousands of applications. We are only now getting around to open-sourcing some of these new, battle-tested components: a great example is ZeroRPC (http://github.com/dotcloud/zerorpc-python). More to come. My hard-earned advice to you Justin is: you have to operate PlatformLayer as a service first and foremost, and the code you publish must flow from the real-world experience of operating that service, charging money for it, and being accountable for its reliability - not the other way around. There's a reason VMWare is a flop in the cloud world: they don't know how to operate their stuff. In any case, I'm super excited to see so much open-source activity around solving these problems. Back in 2008 it was quite lonely :) We hackers all benefit from this friendly competition in the end - happy hacking!
In FathomDB (YC W08) introduces PlatformLayer: XaaS
I'm curious about the constraints this would impose on alternate transports. How similar would they have to be to HTTP? For example, zerorpc (http://github.com/dotcloud/zerorpc-python) supports a request-response pattern (using ZMQ REQ/REP), and can return a stream as a response. That maps nicely to http, and I could see that "mounted" as a mock http endpoint which is very interesting. But there are lots of features in zerorpc that I'm not sure how to map to an http library. For example: * zerorpc methods must expose positional arguments; how would that map to http query arguments? * zerorpc arguments can be arbitrary data structures. * zerorpc has no notion of headers. * etc. I'm excited at the idea of making cross-transport interop easier. At the same time I wonder if the mold of "HTTP-ness" might stifle the ability to think outside the
Read the rest
box when designing a transport?
In The Future of Python HTTP

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.