So, I really like couch, but there are two complaints I have read that I would like to resolve.
First, in the "latency" section of this blog post - http://blog.woobling.org/2009/05/why-i-dont-use-couchdb.html - the author says that Couch has performance issues because of the json/http layer. Is he doing something wrong? Is it only applicable if you make multiple connections from middleware at the same time? I was thinking that EVERY database technology needs to open a socket connection (like MySQL from PHP) so what's the difference? Second, the replication system seems to be hotly contested. I don't really understand how letting my data be inconsistent solves more problems than it creates. I would think that data inconsistency would only be acceptable for very specific apps. If I DO need consistency, will it be easy to replicate/scale horizontally? Or will it require as much or more work as a "normal" master-slave environment? Thanks for pushing the envelope. I love the idea, I'm just still figuring out whether couch is suitable for generic projects (or in other words, for projects that don't fit the use cases exactly). ~sean
