以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads

IPFS相關---Hugo和IPFS:這個博客是如何工作的

Author:

Time: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%。在一天之內,藍墨水的頁面瀏覽量幾乎是之前一個月的兩倍。

RRMine李芯:對IPFS分布式存儲長期看好:金色財經現場報道,4月25日,2021新基建區塊鏈峰會分會場-分布式存儲新時代在成都舉辦。在《IPFS高歌猛進 天花板到底在哪里》圓桌論壇中,RRMine副總裁李芯表示,我們將會進入數據文明時代,數據是重要的生產要素,數據安全、隱私、共享都會成為全球關注的話題,因此RRMine對IPFS分布式存儲賽道長期看好。下一階段,RRMine在擴大基礎設施建設的同時,將從多方面參與IPFS的生態建設,為IPFS分布式存儲的繁榮貢獻一份力量。[2021/4/25 20:56:24]

盡管流量顯著增加,以下是服務于網站的一個主要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指南,了解為什么這很重要)。

乾元資本/KEX集團尹曉剛:代幣經濟通過利益推動IPFS和下一步應用發展:2020年6月22日,由金色財經主辦,節點咨詢、IPFS100.com承辦,星際特工、麥客存儲聯合主辦的“星際漫游指南——IPFS技術與應用研討論壇”在深圳拉開帷幕。乾元資本/KEX集團 尹曉剛,在主題為《IPFS的突圍與機會》的圓桌論壇中指出,IPFS和Filecoin,一方面是去中心化存儲,另一方面是代幣經濟。代幣能促使這個鏈上保管數據端的所有保管者獲得相應的利益,通過利益才有更多的資源,更多的資金再去用被保存數據以及數據的下一步的應用,再去做發展。[2020/6/22]

遷移到Hugo還帶來了其他一些巨大的好處。Hugo是一個用Go編寫的小應用程序,它比Jekyll(一個Rubygem)快得多。Hugo不僅在構建網站方面速度更快(實際上,它幾乎是即時的),而且由于它是一個獨立的、自包含的二進制文件,所以它在CI環境中安裝得更快。我的CI構建從5分鐘多到不到1分鐘。此外,Hugo有許多強大的、有趣的特性,并且得到了積極的維護。

MeetIPFS

星際文件系統(IPFS)是一種協議和網絡,它以對等的方式分發不可變的內容。

如果您不熟悉IPFS,可以將其視為分布式CDN。一旦啟動IPFS節點,就可以使用它在IPFS網絡上發布文檔,世界各地的其他人可以直接向您請求文檔。最好的情況是,一旦有人向您請求一個文件,他們就立即開始向其他人傳播它。這意味著在使用IPFS時,文檔越流行,復制的就越多,因此其他人下載它的速度就越快。

BiKi成立IPFS研究小組:據悉,BiKi交易所率先啟動了對IPFS的專題研究及支持措施。

BiKi交易所成立IPFS研究小組,密切關注IPFS發展進度及行業應用,并將于近日聯合舉辦IPFS專題線上對話及線下見面會。專題活動面向行業頭部礦機廠商、算力平臺、媒體及社區,共同探討IPFS行業機會。[2020/4/21]

通過IPFS分發文件可以非常快且非常有彈性。由于是分布式和對等的,IPFS網絡能夠抵抗審查和DDoS攻擊。

此外,IPFS上的所有文檔都是通過其內容的散列來尋址的,所以它們也是防篡改的:如果有人更改文件中的一個位,整個散列就會更改,因此地址也會不同。

IPFS的問題在于它只是一個內容分發協議,而不是存儲服務。它更類似于CDN而不是NAS。我仍然需要一些服務器,目前我有3臺服務器,配置在一個使用IPFS集群的集群中。它們是小型、廉價的B1msVMs(1vCPU,2GBRAM),運行在Azure上,在世界上三個不同的區域。您可以閱讀我在前一篇文章中如何設置它們。

由于使用IPFS,這個簡單且相對便宜的解決方案能夠提供“100%”的正常運行時間,并且具有ddos抗性。這些網站會自動復制到集群中的所有節點上,這些節點會立即開始播種這些網站,而使用分布在地理位置上的vm,全世界的用戶都可以獲得很高的速度。

讓我們看看架構

博客的架構相對簡單:

將一些新代碼推送到GitHub上的主分支會觸發Azure管道中的自動構建,后者克隆源代碼并運行Hugo來構建網站(都是免費的!)您可以在azc管道中看到配置。回購文件中的yaml文件。

動態 | BCH開發人員將維基解密文檔緩存上傳到IPFS和BCH鏈:據Bitcoin.com消息,為了表示對維基解密創始人Julian Assange的支持,BCH開發人員Chris Troutner決定將整個維基解密文檔緩存上傳到IPFS(星際文件系統)和BCH鏈,以便可以永久閱讀。[2019/4/14]

構建完成后,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網絡。

金色相對論丨林念龍:IPFS礦機技術門檻低 但技術很牛:本期金色相對論在討論上,在討論IPFS礦機熱話題時,蜂窩聯合創始人林念龍認為:有硬盤和帶寬的機器,理論上都可以叫IPFS礦機,比顯卡機技術門檻還低。目前ASIC的廠商估計都看不上,深圳一堆的電子廠都可以做出來,當然IPFS這個技術的確很牛。同時林念龍還表示還是老老實實挖大幣種BTC,盤子大不易砸。小幣種礦機挖礦收益純拼運氣和手速,晚一天,都會賠進去的感覺,比如迅雷的玩客云。[2018/6/27]

大多數用戶仍然在使用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生態的健康發展。

Tags:LOUDCloudAREDFLCloudbricCloudnameAlvareNetdfl幣跟上線了幾家交易所

歐易交易所
JEX上線周ETH期權0627公告_ETH

ETH看漲期權 代碼周ETH看漲0627期權標的ETH合約類型歐式看漲期權計價單位USDT最小價格單位0.0001USDT合約比例20:1.

1900/1/1 0:00:00
Gate.io Startup打折福利EOS 5折認購結果公布_GAT

Gate.ioStartup主流幣打折福利EOS5折認購已經成功完成,ATOM等主流幣種5折銷售即將到來,真金白銀地為用戶送福利.

1900/1/1 0:00:00
網易房產、武昌創業中心攜手索渭傳媒 打造第一個武漢區塊鏈創業Club_區塊鏈

6月18日下午,由網易房產、武昌創業中心及索渭傳媒共同發起的“區塊鏈行業集聚戰略發布會”,在江城武漢如期舉行.

1900/1/1 0:00:00
火幣FastTrack二輪投票今日啟動 最低市場價僅為2.2折_ETH

6月20日20:00,火幣FastTrack首期第二輪投票將正式啟動,現已進入9小時倒計時。首期參選的4個項目Fusion、NewKindofNetwork(NKN)、Origo.Network.

1900/1/1 0:00:00
火星一線 | 解密Facebook加密貨幣Libra治理機制:Facebook將承擔項目領導角色至2019年結束_LIB

火星財經APP一線消息,Facebook于北京時間6月18日17:00前后發布了其加密貨幣白皮書,其加密貨幣被正式命名為“Libra”.

1900/1/1 0:00:00
火星一線 | Fundstrat聯合創始人:比特幣價格將“輕松”突破歷史高點_區塊鏈

火星財經APP一線報道,近日Fundstrat聯合創始人ThomasLee在接受采訪時表示,考慮到比特幣的上漲勢頭,其價格可能很快就會創下歷史新高,“輕松”突破2萬美元的高點.

1900/1/1 0:00:00
ads