On 16 Aug 2010, at 20:55, Miles Fidelman wrote: > Noah Slater wrote: >> On 16 Aug 2010, at 19:22, Miles Fidelman wrote: >> >> >>> I guess I'm just a little surprised that the replication features seem to >>> be independent of Erlang's underlying inter-node communications >>> capabilities. >>> >> I'm going to hazard an answer here. CouchDB is, primarily, a database built >> for the web. That means speaking HTTP. All communication between CouchDB and >> other agents is, and should be, done via that route. There has been talk, in >> the past, about communicating with CouchDB from within Erlang itself, but >> that is not a priority for the main project. Pushing things over HTTP lets >> us take advantage of 30 years worth of caching, proxying, authentication, >> and other Web-stack middleware. > True, but... HTTP is not necessarily an ideal protocol for many-to-many > replication, nor is HTTP 30 years old. There's a lot of experience that > dates back further - for example, UUCP is probably a much better protocol for > large-scale eventual consistency than the pair-wise approach currently used > by CouchDB.
But we have a rock solid implementation (*cough*) that works today :) — Also "better" is hardly objective :) — Noah was using exaggeration as a device to point out that HTTP is indeed very awesome for many reasons including tooling, firewall "support" (hehe) and many more. Cheers Jan --