5

GunDB 基础/存储 + Superpeer

嗨伙计,

我在GunDB探索的第四天,在阅读文档和其他各种教程时,有一点不确定:存储以及我是否需要 Superpeer?

尚未找到使用 GunDB 的生产 dApp 示例

到目前为止,我看到的教程和演示要么在没有同伴的情况下实例化 gun,要么使用 heroku 同伴(例如gun = Gun( [https://gun-us.herokuapp.com/gun, https://foobar.herokuapp.com/gun ] ).

如果你想演示一个聊天或待办事项应用程序,我认为后者很好,你想在这些应用程序中演示实时行为,包括在那些超级同行的帮助下对人们的网络浏览器进行 p2p 同步。我理解这个概念,它很棒,我喜欢它。

从 Firebase 迁移到 GunDB

但是,由于我即将从 Firebase firestore 迁移我的 Sapper (Svelte) 应用程序(因为图形数据集的性质比集合和文档的层次结构更适合我的应用程序)我已经有大约 9 GB 的数据事实上,firestore 始终在线供客户同步,此时我最大的问号是,我如何在我拥有的 GunDB 中构建等价物

  • 能够存储我的 9 GB 不断增长的数据(目前主要是基于文本的数据,但未来还有图像和视频,届时存储需求将大幅增长)
  • 并确保数据随时可供使用网络浏览器的人使用

是否是超级同行?存储选项?

我读过 AXE,我读过 RAD 以及它是具有 GunDB 节点部署的默认存储算法的事实,我看到有一个可选的 AWS S3 存储适配器,当然我也读过关于(计划但尚未准备好?)IPFS存储选项

总而言之,关于可用的存储和超级对等选项,我现在完全迷茫和困惑如何在这一点上继续。

  • 我需要超级同行吗?我想要一个吗?
    • 如果我想要一个,什么是生产托管设置?我正在使用 firebase 托管、身份验证、存储、firestore 和消息传递 atm,所以也许有人在 GCP 上运行了设置?
  • 如何塑造我的存储设置,使其不是演示应用程序,而是具有更大数据集的真实应用程序?
    • 对于付费客户的生产设置,我应该选择哪个托管服务提供商?我更喜欢任何 GCP 服务,可能让超级对等点将其数据存储到 firstore 中,并且或多或少地将图形提供给所有最初请求数据的网络浏览器,直到图形在网络浏览器之间充分分布。
4

1 回答 1

6

# 在生产应用程序中

我们已经看到每月有多达 3000 万活跃用户在 HackerNoon、Internet Archive、NotABug 以及一些我还不能提及的大型电子商务和替代视频平台上使用 GUN。

去中心化的应用程序不是传统意义上的“部署”。一个 dApp 甚至可以通过从您的硬盘驱动器、静态网站或传统的“服务器”(如果您选择一个(不要!))加载它来“部署”。

一个很好的例子是,在 5 分钟交互式编码教程 ( https://gun.eco/docs/Todo-Dapp ) 的最后一步中,您通过在 CodePen/other 中加载应用程序并与你的妈妈和朋友。

# 贮存

默认情况下,所有对等点(浏览器、nodejs、手机)都存储数据。

可悲的是,有些或多或少是可靠的。

原生手机应用程序可能会可靠地存储数据,但可能无法“在线”供其他人访问。

浏览器可能会将数据存储在 localStorage 中,但可能随时会被删除。

所以,是的,一个始终在线并具有大而可靠的存储容量的专用“对等点”作为备份总是有益的。

不过,这不需要成为集中式服务器。您可以运行多台机器并与所有机器对等。我知道有人甚至将他们的桌面直接连接到互联网以获得专用的 IPv6 地址并使用它。

# 如果我使用 Cloud Peer,我该如何设置?

这非常简单,在主自述文件中,只需“一键部署”到 Heroku/Zeit 或 Docker 到其他云:

https://github.com/amark/gun#deploy

这些不仅仅是演示同行!他们每秒处理数千个用户。它们是我用于一些大型生产应用程序的那些。

当然,仍然可能存在打嗝或错误,但我们正在不断改进它。

GUN 的目标是真正简单。无需与本地测试和生产部署不同的超级复杂配置。他们都是同龄人,他们都是一样的!

最后也是最后一点,根据您部署云对等点的位置,您可能拥有也可能没有持久存储。因此,您可能需要做的唯一烦人的配置是连接 S3或任何兼容的替代方案(Open Stack、GC、Azure、Sia 等),请查看以下内容:

https://gun.eco/docs/Using-Amazon-S3-for-Storage

于 2020-04-17T03:13:13.663 回答