PAAS 上的 PouchDb(Heroku,Bluemix 等)

6
我从Stackoverflow得到了很好的反馈,想再核对一个想法。
目前我有一个运行在PAAS上的Web应用,使用nodejs(Heroku和尝试使用bluemix)。服务器被配置为与Couchdb(hosted on cloudant)通信。数据库保存了两种类型的数据,第一种是用户数据(每个用户都将拥有自己的数据库),第二种是应用程序数据本身(指标、用户账户信息(auth/admin stuff)等)。
根据来自这里的一些很好的反馈,想法是用户登录后,他们将通过Cloudant将本地(浏览器)pouchdb实例与之同步(可能通过我的服务器代理,就像在这里推荐的那样)。
现在问题是,对于应用/管理员数据,也许我可以在我的服务器上运行couchdb实例,这样我就不需要为诸如用户登录、度量衡数据等重复的网络调用进行操作。数据并不大,而且已经与用户数据调用分离开来。关键是要有一个快速/本地的实例,主要用于身份验证,更改/更新在用户请求之外进行同步。
后端使用的是express web框架,看起来我的选择是pouchdb...与Cloudant实例同步?
如果我想在运行在PAAS上的node/express服务器上获得本地数据库访问权限(以Couchdb实例为后端),那么这是否是推荐的设置?
非常感谢任何回馈,Paul。

2
有人吗?布勒尔?...布勒尔?...布勒尔... - paultman
我很好奇你最终解决了这个问题没有。 :) 总体来看,这似乎是一个可行的方法,但不确定当时考虑了所有因素。 - BigBlueHat
这些PaaS提供商只允许您暂时将数据存储在文件系统上,因此您可能无法在它们上运行PouchDB。好吧,您可以运行并将所有内容同步到内存或本地文件系统,然后再同步到Cloudant,并希望您的PaaS在此期间不会删除临时文件。随着要同步的数据量增加,这可能会变得更加困难。 - fiatjaf
1个回答

0

不确定您是否找到解决方案,但这是我会尝试的方法。

因为Heroku会清除任何临时数据,所以您将无法运行默认的express-pouch数据库,您需要将PouchDB从使用文件系统更改为使用LevelDOWN适配器。(Pouchdb适配器链接: https://pouchdb.com/adapters.html)

其中一些适配器包括: https://github.com/watson/mongodown https://github.com/kesla/mysqldown https://github.com/hmalphettes/redisdown

您可以轻松获取Heroku mondo、mysql或redis插件,并将其连接到您的express-pouchdb后端。

这样您将能够保留您的数据。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接