首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CocuchDB/TouchDB是为ios应用的离线/在线设置而设计的吗?

CocuchDB/TouchDB是为ios应用的离线/在线设置而设计的吗?
EN

Stack Overflow用户
提问于 2013-03-08 19:10:23
回答 1查看 595关注 0票数 0

我有点困惑,因为我对CouchDB的了解较少。让我用简单的话来解释。我正在开发一个iphone应用程序,我的客户可能会要求android版本。我使用CouchDB作为这个应用程序的数据存储。

我们设计了一个后端,管理员可以从那里设置/更新信息。所有更新的信息应复制到所有iphone设备。当我说从服务器复制到设备时,我并不是指从一个iphone设备复制到另一个设备。表示更新的源始终为服务器。

我的客户还希望,如果可能的话,大多数功能应该离线工作。为了让一些功能离线,客户要求我使用CouchDB和TouchDB(在iphone上),这将是自动同步的。

根据我的说法,CouchDB不是为此目的而设计的,而是为复制而设计的,这是分布式计算所需的,其中数据源不是一台服务器,而是多台服务器。

使用CouchDB/TouchDB时,我遇到了很多问题。其中一个大问题是我的逻辑和UI实现一起构建在我的xcode上。如果明天我要开发Android应用程序,那么我必须在android语法中实现相同的逻辑。逻辑上的更改需要同时更新两个版本。更令人沮丧的是,如果客户明天想要开发windows和BB版本。

为了避免这种情况,我建议我的客户我们应该使用3层架构,我们将构建一个中间件,并将我们的逻辑保留在那里。我们唯一需要在应用程序层面开发的工作是通过WebService和当前UI从中间件获取数据。

但在向我的客户建议之前,我想从专家那里确认我的想法。我可能错了,因为我不太了解CouchDB,也许CouchDb只为离线/在线设置而设计。

请在这里等待来自专家的意见。

EN

回答 1

Stack Overflow用户

发布于 2013-03-09 09:29:10

我现在正在做类似的事情,所以我可以分享我的发现。

我们使用BigCouch (由Cloudant管理的CouchDB分支,提供了一个Couch机器集群)来存储数据,然后使用iOS的TouchDB将数据复制到移动设备上。

我们已经能够让TouchDB与BigCouch协同工作,但它在前进的道路上并不是没有一些颠簸。TouchDB利用了CouchDB中内置的现有复制功能,并很好地处理了它。

根据我的经验,TouchDB在离线模式下也能很好地工作。复制将从设备脱机时停止的位置继续。你也可以配置Touch来做推,拉--或者两者都做,所以这很好。

真正的问题是你什么时候想要迁移到Android。TouchDB Java端口现在处于一种糟糕的状态。它是存在的,但还没有准备好投入生产。事实上,就在这周,我在Twitter上看到,他们正试图雇佣某人来接管这个项目。

即使TouchDB的Java port已经准备好投入生产,你也是对的,你必须重写Android的代码。无论您使用哪种技术,情况都是如此。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15292608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档