我想知道是否有人尝试过使用 get couch-connector
来处理多个数据库。
我有 couchapp
,它使用多个数据库,但我在使用 couch-connector
时遇到问题。 Couch-connector 在我使用一个数据库时效果很好,但如果我尝试从另一个数据库 View 中获取
集合,我就会遇到问题,因为它在 url 中使用了我的主要设计文档。
还有一个问题:在我的项目中实现聊天应用程序的最佳做法是什么。将一个数据库作为收件箱是更好还是我应该为每个用户创建数据库。我担心在一个收件箱数据库的情况下应用程序的可伸缩性。
最佳答案
couch_connector并不是真正为了做一个单一的数据库而构建的。你可以结帐 backbone.couchdb.js如果您的项目进展不远。它通过如下代码支持多个数据库:
var main_db = Backbone.couch.db('main');
var other_db = Backbone.couch.db('other');
您可以在 readme-backbone.js app 中看到一些示例代码(尽管只有一个数据库)我在 Couchbase 进行开发。
希望这两个库足够相似,移植您的代码不会很困难。
对于您的收件箱问题: 第一个问题实际上是您的 MapReduce View ——它们只处理单个数据库中的文档。如果您将使用 View 来访问基于 channel 、日期、用户等的数据,那么您将需要单个数据库中的所有文档。但是,您可以将数据库拆分为比每个用户(例如每个 channel )“更大”的东西。
希望对您有所帮助。
关于javascript - Couchdb、couch-connector 和多个数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8708711/