點擊上方藍字關注我們
本文由IPFS原力區收集譯制,版權所屬原作者
有趣的事實:如果您正在閱讀本文,那么您正在使用分布式web。自2019年2月中旬以來,本博客一直通過IPFS和Cloudflare分布式Web網關提供藍墨水服務。
去年11月,我寫了一篇關于如何從IPFS運行靜態網站的博客。我已經用我和我的家人使用的方式運行了幾個應用程序,我覺得是時候遷移我的博客了。由于我處理了一些問題,其中一些問題將在下面解釋,所以這比預期的要花的時間長一些,但是大約一個月前,我打開了(DNS)開關,并最終關閉了托管博客的單實例VM。
那個決定當時讓我很焦慮,但一個月的情況看起來幾乎完全好。
而黑客新聞Reddit的效果則不然
自從遷移到IPFS之后,發生了一些事情。
就在一周前,我發表了一篇關于Unicode字符串規范化重要性的博客文章,這篇文章幾乎像病一樣傳播開來,在HackerNews的首頁上排名第四,在r/programming上排名第一,并被一些流行的時事通訊收錄。(謝謝你們的愛和熱烈的討論!)
然后,在周一我發布了一個新的開源項目Hereditas,它在Reddit上也得到了很好的曝光。
對于一個月平均瀏覽量不足3000頁的博客來說,以下情況發生了:
3月13日周三,交通流量較上周同期增長5060%。在一天之內,藍墨水的頁面瀏覽量幾乎是之前一個月的兩倍。
BBKX將于今日20時開啟第十一場金色算力云IPFS云算力認購:據BBKX官方消息,BBKX平臺將于本周五20:00(UTC+8)開啟金色算力云IPFS云算力第十一場搶購,限量100IPFS。請參與者提前做好準備工作,周五20:00準時開放搶購。 BBKX平臺IPFS云算力為與金色算力云聯合推出,起購門檻為21.5USDT,可以滿足不同用戶的投資需求。
BBKX成立于2019年,致力于打造綜合性交易平臺,現已集合幣幣交易、ETF杠桿、量化交易、永續合約、混合合約、云算力等多項功能,已獲得節點資本與鏈上基金聯合戰略投資。[2020/8/28]
盡管流量顯著增加,以下是服務于網站的一個主要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指南,了解為什么這很重要)。
耘存科技聯合創始人曹子圣:共同推動IPFS在國內的普及、應用和繁榮:據悉,2020年8月1日,由LBank、金色財經聯合承辦的“LBank和他的朋友們-2020百城計劃”在鄭州舉行。耘存科技聯合創始人曹子圣詳細介紹了耘存科技,并表示他們致力于推廣IPFS,以建立一個完美的IPFS交流合作平臺,深入挖掘IPFS價值,建設IPFS生態為目標,將數以億計的ipfs愛好者凝聚共識、共同打造一個自由、經濟、開放、專業、深入的信息共享、交流學習和資源互助平臺,共同推動IPFS在國內的普及、應用和繁榮。[2020/8/1]
遷移到Hugo還帶來了其他一些巨大的好處。Hugo是一個用Go編寫的小應用程序,它比Jekyll(一個Rubygem)快得多。Hugo不僅在構建網站方面速度更快(實際上,它幾乎是即時的),而且由于它是一個獨立的、自包含的二進制文件,所以它在CI環境中安裝得更快。我的CI構建從5分鐘多到不到1分鐘。此外,Hugo有許多強大的、有趣的特性,并且得到了積極的維護。
MeetIPFS
星際文件系統(IPFS)是一種協議和網絡,它以對等的方式分發不可變的內容。
如果您不熟悉IPFS,可以將其視為分布式CDN。一旦啟動IPFS節點,就可以使用它在IPFS網絡上發布文檔,世界各地的其他人可以直接向您請求文檔。最好的情況是,一旦有人向您請求一個文件,他們就立即開始向其他人傳播它。這意味著在使用IPFS時,文檔越流行,復制的就越多,因此其他人下載它的速度就越快。
通過IPFS分發文件可以非常快且非常有彈性。由于是分布式和對等的,IPFS網絡能夠抵抗審查和DDoS攻擊。
蝶鏈科技創始人彭勇:IPFS成為多維度數據的底層基礎:在7月22日舉辦的《家里有礦 | 大數據時代下 IPFS的機遇在哪里》的直播節目中,蝶鏈科技創始人彭勇表示,IPFS成為多維度數據的底層基礎,多維度數據分析是大數據應用的重要基礎,各個維度的數據越全面才能越能支持數據的分析和挖掘。IPFS網絡作為底層,再配合其他的應用就可以更好的實現數據的多維度分析。例如,個人健康的多維度分析,就需要以這個人的基本信息作為核心來不斷收集各種各樣的信息來進行統一分析,需要考慮到所有信息的分級管理,哪些信息是完全隱私任何人都不能查看,哪些數據是可以通過用戶授權給相關的醫療機構來查看,哪些數據是可以公開查閱。這些都是可以通過IPFS在加上某些應用就可以實現。[2020/7/22]
此外,IPFS上的所有文檔都是通過其內容的散列來尋址的,所以它們也是防篡改的:如果有人更改文件中的一個位,整個散列就會更改,因此地址也會不同。
IPFS的問題在于它只是一個內容分發協議,而不是存儲服務。它更類似于CDN而不是NAS。我仍然需要一些服務器,目前我有3臺服務器,配置在一個使用IPFS集群的集群中。它們是小型、廉價的B1msVMs(1vCPU,2GBRAM),運行在Azure上,在世界上三個不同的區域。您可以閱讀我在前一篇文章中如何設置它們。
由于使用IPFS,這個簡單且相對便宜的解決方案能夠提供“100%”的正常運行時間,并且具有ddos抗性。這些網站會自動復制到集群中的所有節點上,這些節點會立即開始播種這些網站,而使用分布在地理位置上的vm,全世界的用戶都可以獲得很高的速度。
蝶鏈科技創始人彭勇:IPFS應用與不同的大數據場景:在7月22日舉辦的《家里有礦 | 大數據時代下 IPFS的機遇在哪里》的直播節目中,蝶鏈科技創始人彭勇表示,IPFS應用與不同的大數據場景,視頻分發場景是其中的一個重要場景。當全網的視頻數據越來越多,視頻的分發就會成為一個大的問題。隨著觀看視頻的用戶越來越多,承載視頻的服務器的壓力就會越來越大,互聯網的帶寬也會越來越大。[2020/7/22]
讓我們看看架構
博客的架構相對簡單:
將一些新代碼推送到GitHub上的主分支會觸發Azure管道中的自動構建,后者克隆源代碼并運行Hugo來構建網站(都是免費的!)您可以在azc管道中看到配置。回購文件中的yaml文件。
構建完成后,Azure管道將觸發一個自動發布任務。發布管道有兩個階段(您可以閱讀我在另一篇IPFS文章中如何配置它們):
?將文件復制到其中一個IPFSvm中,然后通過SSH調用IPFS-cluster-ctlpinadd命令將文檔添加到集群中,并在所有節點上復制它們。
?調用Cloudflareapi來更新DNSLink,即TXTDNS記錄_dnslink.withblue。包含網站的IPFS散列的墨水。
雖然第一階段是自動發生的,但是在第二階段運行之前,有一個gate需要管理員(我!)手動批準。這讓我可以測試并確保網站通過IPFS成功加載(使用它的完整散列),然后才允許任何人訪問blue.ink。
“IPFS云管算力”第四期BGO認購專場于7月6日16:00開啟:據官方消息,管交所BGOEX“IPFS云管算力”第四期BGO認購專場于7月6日16:00開啟,至7月10日12:00結束,價格2000BGO/TB,總量2000T。“IPFS云管算力”由管交所BGOEX推出的一項支持用戶按T和周期租賃IPFS云算力并享有挖礦權益的業務。據悉,管交所BGOEX已宣布“IPFS云管算力”認購流通使用的BGO將全部銷毀。管交所BGOEX“IPFS云管算力”官方三大承諾:“1.100%自有實體礦機,性價比同行業最高級別;2.挖不出filecoin,100%退還本金;3.如遇突發風險事件不回本,將延長挖礦周期,直至回本并且盈利。”[2020/7/6]
發布管道完成后,任何運行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生態的健康發展。
火星財經APP一線報道,火星財經及共識實驗室發起人王峰今日發表對FacebookLibra的看法,他認為一場開放式金融革命即將涌現,無幣區塊鏈提倡者們應該回家閉門思過.
1900/1/1 0:00:00北京時間2019年6月18日17:00,Facebook通過其下屬獨立網站Calibra.com發布Libra白皮書,萬眾矚目的全新數字貨幣Libra的神秘面紗撩起.
1900/1/1 0:00:00為何人們還沒準備好接納比特幣?簡單問一句“為什么”,或許會浮出很多雷同的答案——可擴展性、交易費、安全性、可用性等。隨著區塊鏈技術的發展,這些問題早晚能解決.
1900/1/1 0:00:00摘要:Facebook宣布其全球加密貨幣項目計劃的幾小時后,眾議院民主黨議員就要求Facebook停止其計劃,直到國會和監管機構完成對其潛在風險的調查.
1900/1/1 0:00:00北京時間6月18日下午,Facebook旗下全球數字加密貨幣Libra官方網站正式上線,Libra穩定幣白皮書也已經公布.
1900/1/1 0:00:00尊敬的ZG.TOP用戶:ZG.top將于2019年06月20日16:00更換ERC20充值地址,包括USDT、ETH等多個ERC20協議幣種的充值地址將會更新。請各位用戶及時更換充值地址.
1900/1/1 0:00:00