2-tier web architecture?
As new users to the Couch* world, I'm hoping that I have understood all the recent developments correctly. We're doing a feasibility study on building a web-application for sale into corporate environments. Front-end work will occur in a javascript/html5 framework such as ExtJS or JQuery. Given that you are moving away from CouchDB, I have some questions about how to appropriately architect web apps using Couchbase.
We found the simplicity of CouchDB's "2-tier", "just javascript" architecture very attractive. It greatly simplifies deployment and technical architecture, and it makes for a more compelling product for sale into corporate environments (where an additional server tier can often make sales harder). However, Couch's 2-tier architecture relies entirely on the REST API and HTTP to work.
In Couchbase Server 2.0, the documentation and promotional material seems to favour use of a seperate web application server sitting in front of Couchbase Server (rather than just a proxy). In addition, most of the client "driver" libraries seem to be for server-side languages, rather than client-side script.
1. Are we right in understanding that Couchbase Server "expects" you to always use a web application tier between it and a client-side browser app?
2. If so, can we still realise the benefit of "just javascript" by using e.g. Node.js as the web application tier?
Any reference materials about appropriate architectural patterns would be appreciated.