我刚刚发现了gunDB,这个概念看起来非常有趣,我想在开始进一步评估它之前找到更多关于它的信息.
mar*_*dal 12
聊天室.所以以同样的方式聊天教程加载了聊天"表",你可以只有一个"房间"表.然后你只能抓住你想要的房间.因为枪使用部分速度很快,它只会最终加载你订阅的数据.是的,客户端只能存储整个数据的子集 - 但这当然可能会影响您的复制/持久性级别.如果你担心这一点,那么运行一个"强大的"对等体(如服务器)是一个简单而完美的解决方案,因为它会备份所有内容.(不幸的是,因为WebRTC对它有问题,所以无论如何你都必须运行中继服务器.所以不妨将其用于存储).
多个实例.您不需要为每个键实例化多个枪实例.事实上,这很糟糕.如果你不这样做会更好.但是我们没有尽可能多地对它进行测试,因为它并不理想.
安全/授权是一个非常敏感的主题,因此这很大程度上取决于您希望如何构建您的应用程序.如果您要进行真正的P2P /分散式设计,那么您需要进行端到端的公钥/私钥加密和签名.这样其他用户即使可能正在帮助备份数据,也无法真正读取数据.但是,如果您想保持简单并构建您的应用程序,就像大多数应用程序已构建...作为集中服务,那么您将代理写入服务器.这是大多数人在构建应用程序时使用的相同技术,而GUN可以做同样的事情.
WiFi /速率限制数据.遗憾的是,这不是直接在JavaScript中提供的,但是听起来像您在PhoneGap中提到的混合应用程序可以访问该信息.GUN旨在在这样的场景中工作,因为它是脱机优先的.但是,如何与提供这些条件的外部API进行交互......不在我的经验范围内,但可行.
时间数据/限制数据传输.首先看我的上述响应,可行,但依赖于外部API.但是在限制查询方面,是的.答:我们很快就会引入"词汇游标",允许客户限制响应,但是我们可能会逐步推出每个约束功能(因为它不是社区的重中之重,但是你的参与将升级它!),首先使用精确的属性匹配(想象一下SQL select语句 - 事实上,它是我们将用来为枪创建SQL查询扩展名!),然后是第二个词法范围(选择属性开始)使用'a'到'c')可以使用时间戳范围来完成,然后是第三个字节约束(类似于一次最多发回200字节).然而,你可以手动做一个显而易见的事情(不是你想要的),你可以只有一个房间的桌子,然后房间是一个块表,而块是一个消息表.潜在的房间也有"最后"块,然后你可以通过做gun.get('rooms').path('mychatroom').path('last').map().val(function(message){ console.log(message); });或类似的东西轻松访问你的聊天应用程序.这将允许您准确控制您想要的条件,但也意味着您必须做更多的工作.
循环参考.已经为你完成了,你可以拥有尽可能多的循环引用 - 这是因为它的图形结构(圆形引用,表格,文档,键/值,等等)而擅长枪支的地方.
是的,枪可以同时监控多个按键.
使用您自己的服务器进行存储...这可能意味着几件不同的事情.如何运行自己的枪支服务器?有一个简单的包装:https://www.npmjs.com/package/gun-server.如果你想要Express和东西的例子那么简单.如何将当前部署的服务器的文件系统用作存储,因为您不想使用S3?您可以使用级别驱动程序https://github.com/PsychoLlama/gun-level.这个回答了吗?
*WebRTC要求STUN/ICE /信令服务器引导WebRTC连接.哪个超级烦人.这意味着即使WebRTC是P2P,为了连接,你必须通过一些服务器,这必须为每个页面加载感到高兴.正因为如此,我们默认捆绑枪与websockets/JSONP,它必须连接到枪中继服务器同行(也有这样的社区枪接力同行,人们可以用于个人实验,但它很容易运行自己的在Point4).因此,我们尚未发布WebRTC适配器,尽管WebRTC +枪非常适合 - 愚蠢的STUN/ICE /信令服务器.
| 归档时间: |
|
| 查看次数: |
2417 次 |
| 最近记录: |