mwt*_*wtb 7 couchdb desktop-application
我希望有人可以在这里验证或纠正我的结论.
我正在考虑写一个小方案项目.我想创建一个桌面应用程序,用于记录将与Web服务器同步的注释,以便可以保持多个安装步骤和数据共享,并且如果需要可以通过浏览器访问它.
我有点半聆听有关CouchDB的声音,我听说提到了"离线功能",desktop-couchdb以及利用其处理间歇性通信的能力以在移动市场中实现分布式应用程序.这一切都让我相信这可能是一个有趣的选择,看看提供我的数据存储和处理我的同步需求,但花了一些时间四处寻找有关如何开始的信息,我的结论是我有完全是错误的结束,现实是:
无法打包CouchDB实例,将其作为桌面应用程序的一部分进行分发,并在该应用程序的上下文中运行它,以便为中央数据库提供本地存储和同步.
我在这里纠正吗?如果是这样有任何技术可以做这种事情,或者我只是滚动我自己的本地存储,可能还在服务器上使用CouchDB?
更新(2012/05):如果您的目标是Mac OS X和/或iOS或Android,请查看Couchbase中的新TouchDB项目.这些实际上使用了SQLite(至少现在),但可以复制到"真正的"CouchDB服务器.另一个终于开始成熟的客户端替代品是PouchDB,它在支持IndexedDB的浏览器引擎中运行.使用这些或使用它们激发类似端口到另一个桌面平台现在正成为一个更好的步骤路径.
原始答案:
无法打包CouchDB实例,将其作为桌面应用程序的一部分进行分发,并在该应用程序的上下文中运行它,以便为中央数据库提供本地存储和同步.
此时,虽然可以在应用程序中包含CouchDB,但您的语句实际上是正确的 - 例如,请参阅CouchDBX.app,它是围绕前缀CouchDB及其所有依赖项的瘦包装器.
构建CouchDB应用程序的最简单方法是假设用户已经运行了CouchDB服务器.这比听起来更容易,特别是Couchone的托管或预装应用程序,如OS X上的CouchDBX或Ubuntu上的DesktopCouch.后者特别有趣,因为如果我理解正确,它现在默认包含在Ubuntu中,并且当您通过D-Bus查询其端口时,会自动为每个用户旋转一个CouchDB服务器.使用launchd和Bonjour可以(并且应该)在OS X上完成类似的操作.
因此,在您编写时,您要么设计您的应用程序以本地格式存储数据,也可以选择与您提供的CouchDB服务同步,或者您必须与您的应用程序一起构建和捆绑所有Erlang,SpiderMonkey和CouchDB以及一些脚本以确保它在需要时运行.这是可能的,但显然这些都不是理想的,并且相信我并不是唯一一个想要面向桌面应用程序的简单解决方案的人!
| 归档时间: |
|
| 查看次数: |
1596 次 |
| 最近记录: |