以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads
首頁 > Polygon > Info

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

1475:推動IPFS列入web3.0基礎設施國家白皮書:為積極推動區塊鏈技術在廣播電視網絡和網絡視聽領域創新應用,國家廣播電視總局發布了關于印發區塊鏈技術應用系列白皮書的通知。該白皮書分為總體篇、內容審核篇、縣級融媒體中心篇三?個系列,其中,在白皮書總體篇內IPFS?(星際文件系統)赫然在列。

積極推動IPFS在國內web3.0建設的1475此前表示:IPFS獨有的分布式存儲將作為web3.0和區塊鏈的支柱性基礎設施,在媒體融合和廣播電視提質增效等方面發揮重要的作用。[2020/11/13 20:46:09]

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

鏈上ChainUP VP Kris Lee:鏈上ChainUP正深度參與IPFS、DEFI、DOT等生態建設:9月3日,華中區塊鏈周在武漢隆重舉辦。鏈上ChainUP VP Kris Lee在《鏈上三周年:交易系統的設計與探索》主題演講中提到,鏈上ChainUP通過三年的技術深耕,采用云原生與分布式撮合等綜合底層技術來提升交易系統的資源利用率、故障自愈、服務治理等能力,做到了全系統分布式無單點、彈性伸縮、適應突發流量、秒級容災恢復。Kris還分享了鏈上ChainUP的大中臺技術戰略,將交易所基礎服務和平臺數據開放,形成以交易所為核心的產品生態,與行業更多優質企業合作,為客戶提供更多交易所擴展功能。同時,在IPFS、DEFI、DOT等生態建設上,鏈上ChainUP也正在從技術層面深度參與,以推動區塊鏈技術在金融領域更廣泛地應用。[2020/9/3]

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

MeetIPFS

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

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

海南安邁云CEO吳文杰:未來3-5年,IPFS至少要搶占10%的中心化儲存市場:金色財經現場報道,8月7日“2020 Cointelegraph中文大灣區·國際區塊鏈周”在深圳舉行。海南安邁云網絡技術有限公司CEO吳文杰在“如何抓住Filecoin的商業新機會”圓桌論壇上表示,當前中心化存儲市場約為6000億美金,而分布式存儲是未來世界的土壤,未來3-5年IPFS生態成熟后,至少要搶占10%的中心化儲存市場,而FIL是IPFS的股票,去中心化儲存的市場估值也將在FIL上得以體現。他還透露,安邁云目前在做基于IPFS的應用生態建設、底層算力基礎設施建設。[2020/8/7]

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

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

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

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

BBKX將于今日12:00開啟金色算力云IPFS云算力認購第二場:據BBKX官方消息,金色算力云IPFS云算力認購邀請專場已于昨日申購完成,應廣大用戶要求,第二場邀請專場將于7月13日12時開啟認購。 BBKX平臺IPFS云算力為與金色算力云聯合推出。起購門檻為21.5USDT,可以滿足不同用戶的投資需求。

BBKX成立于2019年6月,已獲得節點資本與鏈上基金聯合投資,現貨交易手續費低至0.05%。[2020/7/13]

讓我們看看架構

博客的架構相對簡單:

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

構建完成后,Azure管道將觸發一個自動發布任務。發布管道有兩個階段(您可以閱讀我在另一篇IPFS文章中如何配置它們):

?將文件復制到其中一個IPFSvm中,然后通過SSH調用IPFS-cluster-ctlpinadd命令將文檔添加到集群中,并在所有節點上復制它們。

?調用Cloudflareapi來更新DNSLink,即TXTDNS記錄_dnslink.withblue。包含網站的IPFS散列的墨水。

雖然第一階段是自動發生的,但是在第二階段運行之前,有一個gate需要管理員(我!)手動批準。這讓我可以測試并確保網站通過IPFS成功加載(使用它的完整散列),然后才允許任何人訪問blue.ink。

現場 | BTCMEDIA 亞太區 CTO 古千峰: IPFS不是區塊鏈:金色財經11月10日現場報道,今日,由imondo和鏈人聯合主辦的“DAPP開發者大會”在北京舉行。BTCMEDIA 亞太區 CTO 古千峰表示,關于知名項目IPFS大部人分存在四大誤區并做出糾正:1、IPFS不是區塊鏈。2、IPFS不用等到Filecoin上線就能使用。3、 IPFS并不能使存儲和搜索更便宜。4.IPFS不能讓文件分片后分節點儲存。[2018/11/10]

發布管道完成后,任何運行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生態的健康發展。

Tags:LOUDCLOAREFlareGalaxy CloudMeta ClothCARE幣flare幣和apt幣

Polygon
比特幣:比特國際數字資產平臺上線GC

尊敬的GJGlobal用戶:比特國際數字資產平臺共識區上線GC,并開放USDT/GC交易對,BTC/GC交易對,ETH/GC交易對,LBTC/GC交易對.

1900/1/1 0:00:00
LIBRA:貨幣戰爭的王儲---Facebook代幣Libra(一)

自2008年比特幣誕生之日起到現在已經11年了。在這11年里,出現了上千種數字貨幣。數字貨幣的價格動蕩起伏,因為數字貨幣產生的犯罪事件層出不窮。各國政府、金融機構都在研究使用區塊鏈技術變革金融.

1900/1/1 0:00:00
PRO:資金分歧、團隊內訌,Tezos「硬分叉」之謎

繼創始團隊內訌、代幣陷入非法證券風波之后,PoS明星項目Tezos近期迎來了新的危機。Tezos生態中的開發團隊之一OcamlPro宣布將在今年9月對Tezos進行硬分叉,生成新鏈條「Dunec.

1900/1/1 0:00:00
STAK:Staking來襲!10億級市場打開 | 火星總編時刻NO.31

?? 火星財經APP一線報道,6月18日晚,「火星總編時刻」第31期在火星財經創始學習群展開。本期對話主題為「Staking來襲,10億級市場打開!」.

1900/1/1 0:00:00
LIBRA:Facebook加密項目Libra指日可待?需跨越3座大山

值得一提的是,Facebook在印度地區有著相當可觀的用戶數量,僅Whatsapp的用戶量就達到了2億人;此外,印度還有巨額的資金跨境需求.

1900/1/1 0:00:00
LIBRA:美國總統候選人:不應讓Facebook有機會獲得更多用戶數據|Fun Twitter

2019年伊始,金色財經推出全新欄目:FunTwitter。推特是海外加密世界意見領袖們發表言論的重要場所。金色財經將為您收集每日加密世界中的海外意見領袖與知名媒體在推特上的有趣推文.

1900/1/1 0:00:00
ads