火星链 火星链
Ctrl+D收藏火星链
首页 > DAI > 正文

IPFS相关---Hugo和IPFS:这个博客是如何工作的

作者:

时间:1900/1/1 0:00:00

点击上方蓝字关注我们

本文由IPFS原力区收集译制,版权所属原作者

有趣的事实:如果您正在阅读本文,那么您正在使用分布式web。自2019年2月中旬以来,本博客一直通过IPFS和Cloudflare分布式Web网关提供蓝墨水服务。

去年11月,我写了一篇关于如何从IPFS运行静态网站的博客。我已经用我和我的家人使用的方式运行了几个应用程序,我觉得是时候迁移我的博客了。由于我处理了一些问题,其中一些问题将在下面解释,所以这比预期的要花的时间长一些,但是大约一个月前,我打开了(DNS)开关,并最终关闭了托管博客的单实例VM。

那个决定当时让我很焦虑,但一个月的情况看起来几乎完全好。

而黑客新闻Reddit的效果则不然

自从迁移到IPFS之后,发生了一些事情。

就在一周前,我发表了一篇关于Unicode字符串规范化重要性的博客文章,这篇文章几乎像病一样传播开来,在HackerNews的首页上排名第四,在r/programming上排名第一,并被一些流行的时事通讯收录。(谢谢你们的爱和热烈的讨论!)

然后,在周一我发布了一个新的开源项目Hereditas,它在Reddit上也得到了很好的曝光。

对于一个月平均浏览量不足3000页的博客来说,以下情况发生了:

3月13日周三,交通流量较上周同期增长5060%。在一天之内,蓝墨水的页面浏览量几乎是之前一个月的两倍。

比升资本Kobe:IPFS是一个充满想象空间的蓝海市场:金色财经现场报道,4月23日,数御未来——2021数据与存储产业峰会在成都举办。在会议现场,比升资本投资总监Kobe指出,数据已经成为新时代的生产要素,对其关注必可不少。Filecoin是IPFS 分布式存储的激励层,本质是基于IPFS和区块链技术诞生的数据买卖市场。

作为一个刚刚开启的全新赛道,IPFS和Filecoin 以其独特的商业模型与强大的集聚效应,涌现了矿业、区块链和互联网多维度的布局机会,展现出了一个充满想象空间的蓝海市场。目前,Filecoin生态项目加速器孵化了多个项目,包括基于Filecoin的终端用户程序开发、基础设施、开发工具、NFT、DeFi以及开放金融等。[2021/4/23 20:52:08]

尽管流量显著增加,以下是服务于网站的一个主要IPFS节点的CPU使用情况:

Nothing

由于通过IPFS分发内容,并通过CloudflareCDN提供服务,在流量激增5000%之后,BlueInk对性能和可用性几乎没有影响。

不仅如此:测试显示,对于世界各地的用户来说,该网站一直保持着惊人的速度。

MeetHugo

WithBlueInk是一个静态网站。我将内容写入一堆标记文件中,然后使用Hugo生成HTML页面。整个网站(内容、主题、脚本)都是开源的,并在italypalale/WithBlueInk的GitHub上发布。

当我三年前开始写这个博客时,我最初选择了Jekyll,另一个流行的静态站点生成器。但是,当我在处理向IPFS的迁移时,我必须用Hugo替换Jekyll,因为Jekyll不支持相对url。使用Jekyll,所有生成的URL都以/或固定的基本URL开始,当您通过基本URL是动态的IPFS浏览内容时,这将无法工作(请参阅我之前的IPFS指南,了解为什么这很重要)。

BBKX平台将于今日20时免质押币60天填满IPFS云算力认购:据BBKX官方消息,平台将于本周四20:00(UTC+8)开启金色算力云IPFS云算力认购,由金色算力云提供前置质押币,60天填充满有效算力,限量100IPFS。请参与者提前做好准备工作。BBKX平台IPFS云算力为与金色算力云联合推出,起购门槛为530USDT/IPFS,可以满足不同用户的投资需求。 BBKX是一家持续分红的综合型交易平台,已获得节点资本与链上基金联合战略投资。[2020/11/12 12:24:08]

迁移到Hugo还带来了其他一些巨大的好处。Hugo是一个用Go编写的小应用程序,它比Jekyll(一个Rubygem)快得多。Hugo不仅在构建网站方面速度更快(实际上,它几乎是即时的),而且由于它是一个独立的、自包含的二进制文件,所以它在CI环境中安装得更快。我的CI构建从5分钟多到不到1分钟。此外,Hugo有许多强大的、有趣的特性,并且得到了积极的维护。

MeetIPFS

星际文件系统(IPFS)是一种协议和网络,它以对等的方式分发不可变的内容。

如果您不熟悉IPFS,可以将其视为分布式CDN。一旦启动IPFS节点,就可以使用它在IPFS网络上发布文档,世界各地的其他人可以直接向您请求文档。最好的情况是,一旦有人向您请求一个文件,他们就立即开始向其他人传播它。这意味着在使用IPFS时,文档越流行,复制的就越多,因此其他人下载它的速度就越快。

通过IPFS分发文件可以非常快且非常有弹性。由于是分布式和对等的,IPFS网络能够抵抗审查和DDoS攻击。

李世庚:IPFS落地后对于整个DeFi、甚至整个区块链行业都有非常大的利好:IPFS100.com现场报道,9月20日,由节点咨询主办,WAVES、金色财经、IPFS100联合主办的“DeFi崛起 引领矿业新思潮”共为创业者大会·鹭岛分论坛在厦门举行。

在圆桌讨论环节中,WAVES中国区负责人李世庚表示,关于DeFi已经讲了,短期来看一定有泡沫,而且泡沫破灭会很惨烈,目前来看DeFi很多项目是有泡沫的,也没有什么好说的。但是关于未来会有什么样的变局,或者未来DeFi整个发展方向会不会是完全革新性的方向,我的观点是很明确的。未来区块链的技术指标和各项性能,随着链本身的技术以及整个网络环境的提升,这是双方面的,一方面是现有的技术瓶颈被突破,另外一方面,网络的承载能力和一些硬件提升都会导致整个基础设施的升级,这就像最早的互联网时代只能看一个小说或听一个音乐,现在可以直接几秒钟下载两三个小时的电影。整个基础设施的升级会推动DeFi行业的发展,甚至是使得很多之前在DeFi产业做起来很困难的事,以后会变得很顺畅。举例,Uniswap其实真的使用很差,跟链本身的硬件基础有非常紧密的联系。所以我认为在更长时间维度看,包括IPFS落地应用之后,对于整个DeFi、甚至整个区块链行业都有非常大的利好。所以我还是看好未来DeFi变局是随着技术革新和产品本身、硬件网络的进步有越来越多的应用形态和用户体验。[2020/9/20]

此外,IPFS上的所有文档都是通过其内容的散列来寻址的,所以它们也是防篡改的:如果有人更改文件中的一个位,整个散列就会更改,因此地址也会不同。

佟扬:IPFS100.com将助力全产业链发展:IPFS100.com现场报道,8月5日22:00,由IPFS100.com主办;麦客存储联合主办;链上ChainUP、金色算力云战略合作的IPFS100.com发布会在深圳蛇口·麦考利爱尔兰酒吧拉开帷幕。金色财经合伙人兼IPFS100.com CEO佟扬指出,IPFS100.com是专注于IPFS生态的信息服务平台,致力于提供全球最新的IPFS生态产业资讯与数据。我们覆盖了资本、矿业、钱包、交易所、软硬件供应商、分布式存储企业等全产业链用户群体。通过全球化、实时、专业的报道,将IPFS相关资讯一网打尽。网站划分为Filecoin、人物、矿业、百科、深度、技术、AMA七大板块,可以整合最全最广的行业信息。并且凭借与金色财经共享流量的优势,稳居垂直IPFS领域媒体No.1位置。同时,IPFS100.com发力线下活动,星际漫游指南系列活动将带您掀起一次次的、属于IPFS圈层的狂欢。[2020/8/6]

IPFS的问题在于它只是一个内容分发协议,而不是存储服务。它更类似于CDN而不是NAS。我仍然需要一些服务器,目前我有3台服务器,配置在一个使用IPFS集群的集群中。它们是小型、廉价的B1msVMs(1vCPU,2GBRAM),运行在Azure上,在世界上三个不同的区域。您可以阅读我在前一篇文章中如何设置它们。

由于使用IPFS,这个简单且相对便宜的解决方案能够提供“100%”的正常运行时间,并且具有ddos抗性。这些网站会自动复制到集群中的所有节点上,这些节点会立即开始播种这些网站,而使用分布在地理位置上的vm,全世界的用户都可以获得很高的速度。

掌柜调查署|钟庚发:IPFS是Web3.0的底层协议,Filecoin是Web3.0的基础设施:在今日举行的掌柜调查署中,针对“IPFS和Filecoin未来会带来什么革命性的创新“的问题,ChainUP创始人兼CEO钟庚发表示,我之前是做互联网的,所以经历过2.0时代,也研究过1.0时代的互联网。我把它定义为三个阶段:第一个阶段Web1.0:信息单向的提供,比如说代表产品是之前的三大门户。2.0时代,我把它定位为信息的双向互动,除了有机构、平台的信息提供,还有是个人可以提供内容,比如说微博、社交产品抖音,大家现在玩的很火。Web3.0我把它定义为下一代的互联网。3.0有几个特点:

1.Web3.0用户会掌握自己的数据。我们知道在2.0、1.0时代,我们都把数据交给中心化平台,比如说微信数据在腾讯在那里,交易数据在阿里巴巴那里,数据不是我们自己掌握,数据的收益也归属于平台,而个人在里面所能分到收益非常少。

2.Web3.0解决数据安全的问题。基于IPFS的数据存储,它能够很好解决数据安全的问题。

3.Web3.0一定是基于分布式的网络去运行。

4.Web3.0需要有一个统一的数字身份ID,我们现在所有的平台,因为各个平台是割裂的,没有统计的数据身份ID。总结一下:IPFS是Web3.0的底层协议,Filecoin是Web3.0的基础设施。[2020/7/4]

让我们看看架构

博客的架构相对简单:

将一些新代码推送到GitHub上的主分支会触发Azure管道中的自动构建,后者克隆源代码并运行Hugo来构建网站(都是免费的!)您可以在azc管道中看到配置。回购文件中的yaml文件。

构建完成后,Azure管道将触发一个自动发布任务。发布管道有两个阶段(您可以阅读我在另一篇IPFS文章中如何配置它们):

?将文件复制到其中一个IPFSvm中,然后通过SSH调用IPFS-cluster-ctlpinadd命令将文档添加到集群中,并在所有节点上复制它们。

?调用Cloudflareapi来更新DNSLink,即TXTDNS记录_dnslink.withblue。包含网站的IPFS散列的墨水。

虽然第一阶段是自动发生的,但是在第二阶段运行之前,有一个gate需要管理员(我!)手动批准。这让我可以测试并确保网站通过IPFS成功加载(使用它的完整散列),然后才允许任何人访问blue.ink。

发布管道完成后,任何运行IPFS守护进程的人都可以访问这个IPFS地址:

/ipns/withblue.ink

这很简单,也很容易记住。但是它只适用于那些有IPFS守护进程运行的人,或者知道如何使用网关的人(例如,尝试使用gateway.IPFS.io)。

如果您想尝试IPFS,Firefox和Chrome的IPFS-companion扩展允许您通过外部网关或内置网关轻松浏览IPFS网络。

大多数用户仍然在使用HTTP和普通的web浏览器,这时Cloudflare提供了帮助。Cloudflare网络中的边缘节点通过其(免费)分布式Web网关可以充当IPFS网关,并为通过IPFS网络发布的文档提供服务。设置非常简单,如果Cloudflare管理您的DNS,由于CNAME扁平化,您也可以使用根域名(如withblue.ink?withoutwww)!

学习从real-worldexperience

我通过IPFS提供web应用程序已经有6个月了,这个博客也有一个多月了。总的来说,我有一个积极的经验,但如果你正在考虑自己使用IPFS,那么我学到了一些值得分享的东西。

进展顺利

总的来说,依赖IPFS带来了一些有趣的好处。

通过IPFS网络为文档提供“100%”的正常运行时间。只要至少有一个对等点在提供内容,因为它最近浏览了网站(任何类型的客户端),或者固定了它(我的三个服务器),就可以通过IPFS访问博客。

速度:通过IPFS访问网站的用户越多,其他人访问该网站的速度就越快。

该网站还应该以一种自然的方式来抵抗ddos。

然而,实际上,大多数用户并不通过IPFS访问这个博客,而是通过Cloudflare网关通过HTTP访问它。这个方法仍然很有效:

由于IPFS中的每个文档都是不可变的,Cloudflare正在世界各地的每个edge节点中广泛缓存网站。只要DNSLink是相同的,CDN就不需要连接到上游服务器来检查新内容。来自全球多个位置的延迟测试显示一致的、快速的页面加载时间。当你的博客首页在大约3秒内加载完毕(包括图片),并从地球上的每个角落或多或少地持续加载一个新的缓存时,这是相当令人印象深刻的。

设置非常简单。除了将CNAME指向Cloudflare网关并要求他们为我的域启用TLS证书之外,一切都很正常。不需要配置高可用性、负载平衡、跨多个服务器复制内容等。

CloudflareCDN还为您做了很多了不起的事情,包括支持HTTPS和HTTP/2.0(SPDY!)、gzipping响应等。

我学到的/还可以做得更好

HTTP在这个月已经有30年的历史了,而IPFS仍然是一项新技术。使用IPFS,有些东西的工作方式与我们习惯的不同,而另一些则根本不起作用。

IPFS不是serverless;当然也不是免费的。您确实需要至少一个服务器来播种您的数据。好消息是,您不需要大型服务器。一个易崩溃的单核VM提供了足够的CPU;但是,如果您也运行IPFS集群,则需要2GB内存。像我这样添加三个节点可能有点过火了(但这是一个很好的学习经验,而且非常有趣)。

您网站中的所有url必须是相对的。我在上一篇关于IPFS的文章中详细解释了这一点。简而言之,因为用户可以通过多个基本url访问您的网站(在我的例子中是https://withblue)。墨水/https://<网关>/施用肥料/withblue。或者https:///ipfs/),您不能在HTML页面中使用绝对url。这也是我不得不从哲基尔转到雨果的主要原因。

正如我上面所写的,大多数用户不是直接通过IPFS浏览网站,而是通过Cloudflare。这意味着我们的实际正常运行时间取决于他们。虽然Cloudflare到目前为止对我来说运行得还不错,但他们并没有为他们的免费服务提供SLA,而且IPFS网关是否有SLA就更不清楚了。遗憾的是,目前我还没有多少访问者使用IPFS的数据,但我希望他们只是少数。

当使用CloudflareIPFS网关时,有些东西是不可用的,包括:

无法设置自定义HTTP头。在两种情况下,这可能是一个问题:当您想要启用HSTS时(根本没有办法这样做),以及当您想手动设置内容类型时(IPFS网关根据文件扩展名确定内容类型,并使用一些启发式方法,请参阅这个问题)。

没有自定义404页面。

没有服务器端分析,甚至没有通过Cloudflare。您唯一的选择是使用像谷歌Analytics这样的托管解决方案。

我注意到的另一个问题是,当您更改DNSLink的值时,CloudflareIPFS网关并不总是可靠地清除缓存。每个人要花好几个小时才能看到最新的内容。这是迄今为止我遇到的最大问题。

在更新DNSLink值之后,可能会出现冷启动时间问题,第一个页面加载需要额外的几秒钟,但以我的经验来看,这并不太糟糕。之所以会发生这种情况,是因为Cloudflare网关中的IPFS客户机需要遍历DHT,以找到为您的内容提供服务的节点。一旦内容被复制,这就变得越来越快,到一定程度就不再是问题了。

最后,我在运行IPFS节点时遇到的一个问题是,它可以使用相当多的带宽,仅用于使网络工作(甚至不用于服务您的内容!)使用IPFS0.4.19可以极大地缓解这一问题,但是我的Azurevm仍然测量出大约160GB/月的出站流量(使用IPFS0.4.18可以测量到超过400gb的出站流量)。

上述许多问题,包括缓存、冷启动时间、服务器端分析、自定义HTTP头和404页面,都可以通过实现自定义IPFS网关而不是依赖Cloudflare来缓解。这是官方的ipfs。io网站也是如此;如果Cloudflare上的缓存问题没有得到改善,我正在考虑这个问题。

总部位于上海,深耕IPFS社区发展与商业生态建设。

Force系列产品布局IPFS商业应用,贯通视频娱乐、文件共享、浏览器入口、数据加密管理等服务,为企业与个人的使用提供一站式服务。

旗下IPFS原力区是IPFS顶级价值生态社区,聚集了众多技术大咖和IPFS爱好者,通过持续输出全面、精细、优质的IPFS咨询和技术支持,将生态中的爱好者转化为IPFS支持者和参与者,推动IPFS生态的健康发展。

标签:CLOFlareLARDFLYoucloutflare币空投LESLAR价格DFLY价格

DAI热门资讯
OML:FOMO情绪燃至顶峰后 BTC将快速冲破2万历史前高?

随着昨日加密货币Libra白皮书的正式发布,Facebook官宣发币的消息铺天盖地地席卷了海内外媒体.

1900/1/1 0:00:00
COI:灰度投资:比特币对冲全球流动性危机

数字货币集团2016年收购了Coindesk,而灰度投资,则是它支持的一个加密货币资产管理商。灰度投资刚刚发布报告表示,他们看好比特币,有对冲全球流动性危机的巨大潜力.

1900/1/1 0:00:00
BTC:BTC涨跌 看这3个数据就够了

欢迎Robbie为大家带来交易心得的分享,希望本文可以让大家意识到市场行情数据的重要性,能够通过市场上可以搜集到的数据来给自己的交易决策做更多的支撑.

1900/1/1 0:00:00
区块链:3点带你快速了解 Facebook白皮书 Libra

本文观点仅代表个人,仅限交流学习,所有内容不构成任何投资建议。想及时了解更多行情信息,请添加官方微信进群:jiamibaoluo。一、热点解析今日午后Facebook的Libra白皮书发布.

1900/1/1 0:00:00
COI:KuCoin Meetup – 韩国首尔专场将于6月27日举行

2019年6月27日,KuCoin将在韩国首尔举行线下Meetup活动,向当地用户介绍KuCoin生态发展,以及即将到来的新功能和产品。许多顶尖区块链项目和意见领袖将出席并分享他们的观点.

1900/1/1 0:00:00
HTN:体验Lightning Labs发布的傻瓜式(真)闪电网络移动钱包

今日,闪电网络开发商LightningLabs发布了iOS和安卓版移动端闪电网络钱包应用的alpha版本,加上其此前发布的3个桌面版钱包,LightningLabs支持的操作系统总数达到了5个.

1900/1/1 0:00:00