博士
编写完全基于REST数据库服务器(CouchDB)的应用程序和直接访问DB的web应用程序(而不是中间有web服务器)的前景如何?
我最近开始查找一些NoSQL数据库。MongoDB似乎是一种流行的选择。我也喜欢这个项目。
但我个人喜欢CouchDB的REST接口。因此,我想知道的是,是否存在应用程序的可能性(可能是在web浏览器中缓存的应用程序,铬扩展等等)。它只需直接查询数据库,而不需要中间的with服务器。所有的计算逻辑都将驻留在客户机应用程序中,而数据库将执行它所做的工作,CRUD。由于大多数客户端框架(我不知道哪个不支持REST查询)支持REST查询,这可能是编写针对各自框架进行优化的应用程序的好方法。这些应用程序虽然不会做复杂的计算,但仍然提供了足够的功能,可以取代许多传统的应用程序。
是否有资源和项目,可以帮助我编写这类应用程序,以及这样做的范围和发展方向?
这是否存在任何技术/安全问题?
这篇文章将帮助我决定研究像CouchDB这样的项目(稍后可能深入到Erlang ),或者继续使用传统的框架(比如Django)和SQL数据库。
我想到的这类应用程序的一个具体要点是通过复制客户端上的CouchDB数据来创建脱机应用程序。
发布于 2011-06-23 13:03:57
你可能喜欢读这里的文字。
摘要:
这是一个实验,目的是看看使用CouchDB开发一个简单的网站是多么容易,而且(几乎)没有其他任何东西。Ely本质上是一个静态网站,因此几乎没有充分利用CouchDB的barely索引或其分布式功能的强大功能。
发布于 2011-06-23 17:46:28
这取决于您在多大程度上信任公共用户在数据库对象中使用CRUD。您仍然需要通过数据库上的访问API来验证哪些操作是有效/允许的,哪些是不允许的。这就是为什么人们首先在客户端和数据库之间创建服务层的原因。
现在,我对CouchDB还不够了解,但我认为默认情况下它没有考虑到如此复杂的业务权限逻辑。但是即使在这种情况下,数据库也是web服务器,您只是对业务逻辑进行了不同的编码。
发布于 2011-06-24 05:56:22
我读过这个CouchDB指南
独立应用程序页面说明了这一切。
从这一页:
因为可以复制设计文档,所以会复制整个CouchApps。CouchApps可以通过复制更新,但用户也很容易“分叉”,用户可以随意修改源代码。
这些应用程序实际上已经比我想象的更受欢迎了。
这份指南似乎能回答我的大部分疑问和问题。我一开始并没有读过它,假设它只是api和如何使用数据库的参考。但是它提供了关于CouchDB项目的一个非常好的概述。
https://softwareengineering.stackexchange.com/questions/86461
复制相似问题