

Twitter releases the code for the messaging system they use across their clusters - pius
http://rubyforge.org/projects/starling/

======
bayareaguy
It's interesting that its own server (starling) uses the Memcached protocol.
From the readme:

    
    
      Starling - a light weight server for reliable distributed message passing.
    
      = Synopsis
    
      # Start the Starling server as a daemonized process:
      starling -h 192.168.1.1 -d
    
      # Put messages onto a queue:
      require 'memcache'
      starling = MemCache.new('192.168.1.1:22122')
      starling.set('my_queue', 12345)
    
      # Get messages from the queue:
      require 'memcache'
      starling = MemCache.new('192.168.1.1:22122')
      loop { puts starling.get('my_queue') }

------
joshwa
Has anyone actually looked at this code yet? Documentation?

Wish they'd put up a SVN browser so I don't have to download it to see what it
looks like.

~~~
ijoshua
I looked at it very briefly. The codebase is actually pretty small. It appears
to depend heavily on memcached.

------
codeslinger
Yay! Finally... Blaine was talking about releasing this for months; glad he
finally got around to it :)

