On Thu, Sep 09, 2010 at 02:15:52PM -0400, Wesley Craig wrote:
> On 08 Sep 2010, at 16:41, Andrew Morgan wrote:
> > Unfortunately, I've never setup a "unified" Murder, so I don't fully 
> > understand what the advantages and disadvantages of it compared to a 
> > "traditional" Murder.  Maybe someone else can jump in here with their 
> > experiences.
> 
> The main advantage is that BEs can proxy for other BEs, no FEs are required.  
> In m observation, the FEs are typically CPU bound, while the BEs are 
> typically IO bound.  Since the BEs have an excess of CPU, it makes some sense 
> to combine the two roles.
> 
> Other than the bugs one finds in new code, unified is logically superior to 
> "traditional" and in the long run traditional should be retired.

Sounds good to me.  Let's have a look at those bugs and see how bad they
are!  If we can make "one murder to rule them all" I'd be happy :)

> In the future, I'd like to add "unified" replication, masterless murder, and 
> auto failover. In my ideal minimum system, there are two machines, 
> replicating to each other, providing high availability, proxying, etc.

Yes, this.  Absolutely.  The replication code is pretty safe for multi-master
in my branch already.  At least for mailboxes.  Sieve, Seen and Subs are
somewhat trickier.  I think the only really safe way is to keep "deletion"
entries around and replicate those too so you can tell the difference between
a creation at one and and a deletion at the other!

Anyway - I've been thinking about this a bit.  Some of it's not too hard,
some is trickier.  In particular I think each mailbox (and by extention
each user - maybe based on their INBOX...) needs to have a list of machines
it should be replicated on and a "current primary" which are sent to the
murder.  The tricky part is - there should be a master, and it should
probably either be chosen by some sort of election between the active
servers (here lies high-availability heartbeat magic) or by IP address
allocation.  Anybody know if avahi and friends can help here?

I really like this idea - particularly if servers can have almost-auto-
discovery.  It would be great if you could just run up a bunch of Cyrus
servers "out of the box" and have them talk to each other.

Bron ( and I really like the idea of being able to replicate a subset of
       users - because it would let you set up a "home replica" that talks
       to your ISP/Work/Uni server and gives you super-fast access while
       still keeping full IMAP semantics! )
----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/

Reply via email to