阅读更多

1顶
0踩

数据库
PouchDB是一个开源的JavaScript数据库,可以运行在浏览器中。PouchDB的数据存储、处理方式受到了Apache CouchDB的启发(CouchDB是一个面向文档的数据库,可通过JavaScript以MapReduce的方式对数据进行查询和索引,同时还提供增量复制的双向冲突检测和解决方案)。

PouchDB项目的目标是帮助开发者构建线上和线下都能很好地使用的Web应用程序

  • 在应用程序离线的时候,可以将用户数据保存在本地;
  • 当恢复在线状态时,通过CouchDB和其他相兼容的服务器来同步这些数据。
这样,无论用户在什么地方、使用什么设备登录,都可以看到一致的数据。

就像离线版的Gmail或印象笔记等应用,你可以在任何地方、任何时候编辑内容,无论线上或线下,而在下次登录时这些内容会自动同步,并且在同步的时候可以保证之前在不同设备上保存的离线内容不发生冲突。

示例代码如下:

var db = new PouchDB('dbname');

db.put({
 _id: 'dave@gmail.com',
 name: 'David',
 age: 66
});

db.changes({
  onChange: function() {
    console.log('Ch-Ch-Changes');
  }
});

db.replicate.to('http://example.com/mydb');


PouchDB基于Apache 2.0开源协议,代码托管在GitHub上:https://github.com/daleharvey/pouchdb

官方网站:http://pouchdb.com/
文档:http://pouchdb.com/learn.html
1
0
评论 共 3 条 请登录后发表评论
3 楼 ykssky 2014-01-11 02:14
唯一勘用的可能就是这个 MapReduce . 可 Browser 中的数据就是 rendering/showing , 就是个 view , 通常不该大到要用 MapReduce 的程度, 如果大到那个程度就是设计有问题了.
2 楼 ykssky 2014-01-11 02:10
我怀疑这个东西的实用性. 而且用户的习惯很难改变, local PouchDB 只会 confuse users.
比如, 用的 online 工具. Offline 的时候, 我也访问不了 Web App , 开不开页面. 假设我手机有在联网时候打开的页面, 现在断网了, 我提交了数据. 因为没联网, 仅仅保存在 Browser 的 local PouchDB 中. 然后我把浏览器关了. 回到家, 按照正常习惯, 我已经用手机提交了 card 数据. 从电脑打开 online 工具, 结果屁也看不到. 他妈的数据存在手机的 local PouchDB 中呢.
1 楼 white_crucifix 2014-01-10 00:07
JS你这么火你爸妈知道吗?

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • PouchDB:同步的数据库!-开源

    PouchDB 是一个开源的袖珍型 JavaScript 数据库,当它重新上线时可以方便地与服务器同步。 它的灵感来自 Apache CouchDB,所以它被设计为在浏览器中运行良好。 创建PouchDB的目的是使Web开发人员能够构建脱机和联机...

  • pouchdb:-PouchDB是一个袖珍数据库

    PouchDB是一个受启发的开源JavaScript数据库,旨在在浏览器中良好运行。 PouchDB的创建是为了帮助Web开发人员构建脱机工作以及联机工作的应用程序。 使用PouchDB 要开始使用PouchDB,请查看和。 获得帮助 PouchDB...

  • PouchDB:一个开源的 JS 数据库

    PouchDB 是一个受Apache CouchDB启发的开源JavaScript数据库,可以完美运行在浏览器中。设计初衷是,帮助Web开发者构建能在本地离线运行的App,一如在线时运行的一样。 它能让应用程序离线时存储数据,并在回到...

  • pouchdb, PouchDB是一个袖珍大小的数据库.zip

    pouchdb, PouchDB是一个袖珍大小的数据库 PouchDB同步同步... PouchDB是一个开源JavaScript数据库,受 Apache的启发,它被设计为在浏览器内部运行良好。PouchDB是为了帮助web开发人员建立在线工作的应用程序,以便在线

  • PouchDB:浏览器端数据库

    PouchDB是一个受Apache CouchDB启发的开源JavaScript数据库。可以完美运行在浏览器中。PouchDB设计的初衷是,帮助Web开发者构建能在本地离线运行的App,一如在线时运行的一样。它能让应用程序离线时存储数据,...

  • PouchDB客户端JavaScript数据库入门

    这篇文章是由同行评审... 浏览器一直被提供更好的JavaScript性能,而且能够做的事情越来越多,具有丰富的JavaScript API的东西像地理定位,以及对等网络通信。 丰富的网络应用的兴起也创造了需要良好的客户端...

  • 转发:总结一些JavaScript开发的著名开源项目

     是一个受Apache CouchDB启发的开源JavaScript数据库,旨在在浏览器中良好运行。 PouchDB是为帮助Web开发人员构建在线工作的离线应用程序而创建的。 它使应用程序能够在脱机时本地存储数据,然后在应用程序...

  • javaScript实现的 数据库

    LokiJS一个基于JavaScript实现、轻量级的面向文档的数据库,其目的是把JavaScript对象作为文档,然后再进行存储,并且以同样的方式来检索数据。 LokiJS可以运行于Node.js和所有支持JavaScript的浏览器、移动应用程序...

  • ionic 通过PouchDB + SQLite来实现app的本地存储demo

    PouchDB是一个开源的JavaScript库,在浏览器中使用IndexedDB或WebSQL存储数据。是从Apache CouchDB衍生而来,并且允许本地数据和CouchDB服务器进行数据同步。 IndexedDB或WebSQL均有存储空间的限制,如果想要在ionic...

  • 汇总一些知名的 JavaScript 开发开源项目

     是一个受Apache CouchDB启发的开源JavaScript数据库,旨在在浏览器中良好运行。 PouchDB是为帮助Web开发人员构建在线工作的离线应用程序而创建的。 它使应用程序能够在脱机时本地存储数据,然后在应用程序重新...

  • 各类数据库介绍

    1961年,GE(通用电气公司,General Electric Company)的Charles Bachman ,开发了IDS(集成数据存储,Integrated Data Store),这是世界上第一个NDBMS(网状数据库管理系统,Network Database Management System...

  • 数据库简史(精简版)

    一、RDBMS(关系数据库,Relational DBMS) 数据库早期史 1.1 Oracle简史 1.2 MySQL简史 1.3 Microsoft SQL Server简史 1.4 PostgreSQL简史 1.5 DB2简史 1.6 Microsoft Access简介 1.7 SQLite简介 1.8 ...

  • ionic2框架pouchDB离线数据库的使用

    PouchDB(https://pouchdb.com)是一个开源JavaScript项目,来自Apache CouchDB数据库设计运行在浏览器中。PouchDB帮助web开发人员构建应用程序创建工作离线在线一样。它允许应用程序在本地存储数据离线,然后同步...

  • 数据库简史

    数据库简史 ● 一、RDBMS(关系数据库,Relational DBMS) ● 数据库 早期史 1961年,GE(通用电气公司,General Electric Company)的Charles Bachman ,开发了IDS(集成数据存储,Integrated Data Store),这是...

  • UPS、蓄电池、空开、电缆配置计算方法.pptx

    5G通信行业、网络优化、通信工程建设资料

  • node-v7.4.0.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

  • Unity mesh减面工具 Mesh Simplify 1.12

    Unity mesh减面工具 Mesh Simplify 1.12

  • 基于Springboot+Vue酒店客房入住管理系统-毕业源码案例设计.zip

    网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管理就很关键。系统化是必要的,设计网上系统不仅会节约人力和管理成本,还会安全保存庞大的数据量,对于信息的维护和检索也不需要花费很多时间,非常的便利。 网上系统是在MySQL中建立数据表保存信息,运用SpringBoot框架和Java语言编写。并按照软件设计开发流程进行设计实现。系统具备友好性且功能完善。 网上系统在让售信息规范化的同时,也能及时通过数据输入的有效性规则检测出错误数据,让数据的录入达到准确性的目的,进而提升数据的可靠性,让系统数据的错误率降至最低。 关键词:vue;MySQL;SpringBoot框架 【引流】 Java、Python、Node.js、Spring Boot、Django、Express、MySQL、PostgreSQL、MongoDB、React、Angular、Vue、Bootstrap、Material-UI、Redis、Docker、Kubernetes

  • JAVA扫雷游戏程序+源码

    扫雷游戏是一款经典的计算机游戏,它的目标是在一个方格矩阵中找出所有隐藏的地雷。玩家需要通过点击方格来揭示其内容,如果方格中有地雷,则游戏结束;如果没有地雷,则会显示周围8个方格中地雷的数量。玩家需要根据这些信息来判断哪些方格是安全的,并继续点击其他方格。 在JAVA扫雷游戏程序中,我们使用了一个二维数组来表示游戏的方格矩阵。每个方格可以包含以下三种状态之一:未被揭示、有地雷或安全。我们还使用了一些辅助变量来跟踪游戏中的状态,例如已揭示的方格数量和剩余的地雷数量。 当玩家点击一个方格时,程序会检查该方格是否已经被揭示。如果是,则不做任何操作;否则,程序会揭示该方格的内容,并根据其是否包含地雷来更新游戏状态。如果方格中有地雷,则游戏结束;否则,程序会递归地揭示周围的方格,直到遇到已经揭示的方格为止。 为了提高游戏的可玩性,我们可以添加一些额外的功能,例如计时器、难度级别选择和自定义方格大小等。此外,我们还可以使用图形用户界面(GUI)来美化游戏界面,使其更加友好和易于操作。

Global site tag (gtag.js) - Google Analytics