Permaweb, Arweave Ekosisteminin önerdiği yeni nesil İnternet mimarisidir.Permaweb, uygulamaların ve web sitelerinin sürekli erişilebilir olduğunu vurgular.İnternetin anılara sahip olmasını ve onları asla unutmamasını sağlar. Aynı zamanda Permaweb Severless özelliğine sahiptir.Geliştiricilerin inşaat sürecinde front-end ve back-end dağıtmasına gerek yoktur.Geliştirilen tüm servisler Permaweb'in temel servis katmanı tarafından sağlanacaktır.
Permaweb kavramı ve vizyonu hakkında daha fazla bilgi için, Permaweb kavramı hakkında daha fazla bilgi edinmek için Öğretmen Liu Yi tarafından yazılan "Arweave'in Potansiyeli İskenderiye Kütüphanesini Canlandırmak, Bir Filecoin Yerine Değil" yazısını okuyabilirsiniz.
Bu makale, Permaweb'i SCP teorisi ile birlikte teknik bir bakış açısıyla yorumlayacaktır.
Temel çerçeve
Permaweb üç katmanlı bir mimari kullanır, en üst katman kullanıcı odaklı arayüz olan uygulama katmanıdır. Orta katman, uygulama için arka uç hizmetleri sağlayan hizmet katmanıdır. Alt katman, uygulamalar için veri depolama hizmetleri sağlamak üzere Arweave'i kullanan depolama katmanıdır.
Permaweb'in mimarisi Web2 mimarisinden çok farklı değildir.Uygulama katmanı geleneksel Web2 front-end'e karşılık gelir, hizmet katmanı back-end'e karşılık gelir ve depolama katmanı fiziksel sunucu veya veritabanına karşılık gelir.
Permaweb ve Web2 arasındaki en büyük fark merkezi olmayan depolama kullanmaktır. Permaweb uygulaması kalıcı depolama alanı olan Arweave'i entegre ettikten sonra uygulamanın içeriğine müdahale etmek ve silmek çok zorlaşacak ve uygulama merkeziyetçilik özelliği kazanacaktır. Permaweb'in mimarisi Web2 ile yüzeysel benzerlikler taşırken, altında yatan teknoloji ve tasarım felsefesi temel farklılıklar yaratıyor.
Permaweb'in uygulama mimarisi aşağıdaki şekilde gösterilmiştir
FotoğrafPermaweb yemek kitabından
Aşağıda, Permaweb'in üç katmanlı mimarisi ayrıntılı olarak tanıtılacaktır
depolama katmanı
Depolama katmanı Permaweb'in çekirdeğidir.Depolama katmanı blockchain teknolojisini kullanmıyorsa Permaweb ile Web2 arasında hiçbir fark olmayacaktır. Permaweb'in depolama katmanı mutlaka Arweave ile sınırlı değildir. Teorik olarak, eksiksiz bir Permaweb oluşturmak için depolama katmanı olarak Bitcoin veya Ethereum kullanmak da mümkündür, ancak geliştiricilerin ve kullanıcıların aşırı depolama maliyetlerini karşılaması zordur. Arweave şu anda kalıcı depolama için en profesyonel blok zinciridir ve 1 GB için yalnızca 5 ABD Doları tutarındadır, bu da Permaweb için en iyi seçimdir.
Öyleyse, depolama katmanı IPFS kullanabilir mi? IPFS kullanılırsa, Permaweb veri izlenebilirlik özelliğini kaybeder.IPFS'nin veri CID'si, değiştirilemeyeceğini garanti edebilir, ancak IPFS, blockchain teknolojisini kullanmaz. IPFS verilerinin bir blok zaman damgası yoktur, bu nedenle verilerin ne zaman üretildiğini söylemek imkansızdır; aynı zamanda veriler, IPFS hizmet düğümü kapatıldıktan sonra kaybolacaktır ve verilerin kalıcı olarak saklanacağının garantisi yoktur. izlenebilir
Hizmet katmanı
Birleştirilmiş bir ara yazılım olarak hizmet katmanı, uygulamalar için durum bilgisi olmayan ve yatay olarak genişletilebilen Web2 mikro hizmet kümelerine benzer API'ler sağlar. Genellikle, Permaweb'in hizmet katmanı standart arabirimler ve protokoller sağlar (Web2'nin gRPC'sine veya Thrift'e tamamen açık kaynak ve açık protokollere benzer), bu arabirimler ve protokoller tamamen açık ve açık kaynaktır ve hizmetleri dağıtan herhangi bir hizmet sağlayıcı aynısını sağlayabilir Protokol standartlarına göre API. Herhangi bir uygulama, standart protokoller kullanılarak geliştirildiği sürece farklı servisler üzerinde çalıştırılabilir ve kullanılabilir.
Şu anda Arweave'in hizmet katmanı dört temel bileşen içerir:
Ağ geçidi hizmeti: sık kullanılan Arweave verilerini önbelleğe alır. arweave.asia, arweave.dev, g8way.io, arweave.world gibi.
**Veri bağlama hizmeti (toplu veri paketleme): **Arweave'e büyük miktarda veriyi toplu olarak paketlemek için Arweave ANS-104 standardını kullanın. Bundlr, arseeding vb. ANS-104 verileri GraphQL kullanılarak da alınabilir.
**Serileştirme hizmetleri: **Akıllı sözleşme hizmetleri, ödeme hizmetleri vb. Warp, everPay vb.
**İndeksleme hizmeti: **Arweave Etiketleri alma hizmeti, tam metin dizinleme hizmeti. Adot, KNN3, goldsky, vb.
Mevcut standart protokol yalnızca yukarıdaki dört modülü içerir ve Permaweb'in hizmet katmanı gelecekte yeni standardı daha da genişletebilir.
Uygulama katmanı
Permaweb uygulamaları sunucusuz özelliklere sahiptir, geliştiricilerin herhangi bir sunucu dağıtmasına gerek yoktur. Hizmet katmanı, uygulama katmanı için standart bir arayüz sağladığından, spesifikasyonlara göre geliştirilen uygulamalar herhangi bir hizmet katmanında açılabilir ve kullanılabilir.
**Etkileşim: **Kullanıcıların yalnızca hizmet katmanıyla etkileşime girmesi gerekir ve temel blok zinciriyle etkileşime girmesi gerekmez.
**Kaynak yükleme: **Standartlaştırılmış ağ geçidi, Permaweb'in ön ucu tarafından yüklenmesi gereken tüm dosya kaynaklarıdır.Manifest standardına göre, bu dosya kaynakları, depolama katmanındaki kaynakları bir dizin biçiminde düzenler, web protokollerinin yüklenmesi ve birleştirilmesi için uygundur.
**Veri yazma: **Permaweb'in yazımı genellikle Arweave üzerinde büyük ölçekli veri yazmayı destekleyebilen ANS-104 standardını kullanır. ANS-104 tarafından uygulanan paket hizmeti, Permaweb'in yazma deneyimini Web2 ile tamamen aynı hale getirir.
**Veri sorgulama ve indeksleme: **Standartlaştırılmış indeksleme hizmeti, Permaweb'in içeriği dinamik olarak yüklemesine olanak tanır. Dizinin oluşturulması, verilerin nihai olarak Arweave'e paketlenmesini beklemeye gerek duymaz.Veriler paket hizmetine yüklendikten sonra, gerçek zamanlı olarak verimli bir uygulama dizini oluşturularak kullanıcılara gerçek zamanlı veri sorgulama yetenekleri sağlanır. .
Özetlemek gerekirse, Permaweb, etkileşim açısından Web2 ile aynı deneyimi elde edebilir.
Sansür Direnci: Standart protokoller ve arabirimler, sansüre dayanıklı uygulamalar sağlar. Aşağıda listelenen URL, yemek kitabı adlı bir Permaweb uygulamasıdır:
Yemek kitabı uygulamasına herhangi bir URL açılarak erişilebildiği ve web sitesine dünya çapında farklı ağ geçitleri ve sunucular tarafından hizmet verildiği bulunabilir. arweave.asia erişilemez hale gelirse, kullanıcılar uygulamayı kullanmaya devam etmek için birkaç başka URL'yi kullanmaya devam edebilir. Tüm ağ geçitleri kapatılsa bile yemek kitabı verileri Arweave'de saklanır ve servis sağlayıcının yemek kitabı uygulamasını istediği zaman geri yükleyebilmesi için veriler kaybolmaz.
Depolama katmanı olarak Arweave kalıcı depolamanın kullanılması, her bir Permaweb uygulamasının verilerin merkezden dağıtılmasını garanti edebilir; hizmet katmanı olarak standartlaştırılmış, açık kaynaklı bir protokol kullanmak, mücbir sebepler nedeniyle bireysel sunucuların kapatılmasından kaynaklanan inceleme riskini önleyebilir. Permaweb uygulamaları merkezi değildir ve sansür karşıtıdır.
SCP'nin mikro hizmet sürümü
Permaweb'in mimarisi, geleneksel Web2'ninkine benzer.Özünde, Permaweb, merkezi olmayan depolamaya dayalı bir dizi mikro hizmet uygulama mimarisidir.
Mikro hizmetler, büyük ve karmaşık bir uygulamayı bir dizi daha küçük, daha bağımsız hizmet birimlerine bölen, Web2 geliştirmede kullanılan bir yazılım mimarisi modelidir. Her mikro hizmet, bağımsız olarak geliştirilebilen, dağıtılabilen ve çalıştırılabilen bağımsız bir işlevsel modüldür. Bu mikro hizmetler, HTTP veya mesaj kuyrukları gibi hafif iletişim protokolleri kullanılarak uygulanabilen, iyi tanımlanmış API'ler aracılığıyla birbirleriyle iletişim kurar.
Permaweb'in genel mimarisi mikro hizmetlere çok benzer ve her Permaweb uygulaması standartlaştırılmış ve bağımsız hizmet birimlerinden oluşur. Aynı tasarım konsepti, Permaweb'e büyük ve karmaşık uygulamalar oluşturma yeteneği verir.
Geleneksel mikro hizmetlerden farkı, Permaweb'in SCP ile uyumlu olması ve depolama mutabakatına dayalı bir uygulama olmasıdır. Permaweb, SCP'nin mikro hizmet mimarisi sürümüdür.
SCP (Storage-based Consensus Paradigma) nedir? Depolama tabanlı mutabakat paradigmasına dayanan temel fikir, depolama değişmez olduğu ve yukarıdaki işlemler izlenebildiği sürece, herhangi bir yerdeki uygulama ve hesaplamanın tek sonuç olacağı ve fikir birliği elde edilebileceğidir. SCP'nin özelliği, temel alınan verilerin sınırsız kombinasyonlara sahip olabilmesidir. Veri ve veri birleştirme standartları karşılandığı sürece, uygulama herhangi bir depolama katmanından benzersiz bir durum oluşturabilir ve hatta birden çok depolama katmanını bir araya toplayabilir.
Uygulamaları geliştirmek için SCP kullanırken, geleneksel uygulama mimarisi çok fazla ayarlama gerektirmez, yalnızca DB'nin (depolama katmanı) değiştirilemez ve izlenebilir bir blok zinciri depolaması ile değiştirilmesi gerekir.
Avantaj
Bu merkezi olmayan mikro hizmet mimarisi kullanılarak geliştirilen uygulamalar, merkeziyetsizlik, değişmezlik, izlenebilirlik, anti-sansür ve daha fazlası dahil olmak üzere blok zincirinin aynı özelliklerini elde edebilir.
Geleneksel mikro hizmet mimarisi gibi, bu mimari de aşağıdaki geliştirme avantajlarına sahiptir:
**1. Modülerlik ve sürdürülebilirlik: **Her biri belirli bir işlevden sorumlu bağımsız hizmetler. Bu standartlaştırılmış ve modüler tasarım, her hizmetin bağımsız olarak geliştirilmesini, test edilmesini, devreye alınmasını ve sürdürülmesini sağlayarak uygulamanın sürdürülebilirliğini ve esnekliğini artırır.
**2. Bağımsızlık: **Her hizmet farklı ekipler tarafından geliştirilebilir ve sürdürülebilir. DAO'nun özellikleriyle daha uyumludur, farklı kuruluşların ve bireylerin Permaweb için en iyi performansı ve geliştirme hızını sağlamasına ve geliştiricilerin en uygun teknoloji yığınını ve araçlarını seçmesine olanak tanır. Arweave ekosisteminde farklı ekiplerin farklı hizmetler sunduğunu görebiliriz.Örneğin, ar.io ağ geçitleri sağlar, bundlr ve açık kaynak arseeding veri bağlama hizmetleri sağlar, everPay ve Permaswap özel finansal hizmetler sağlar vb.
**3. Ölçeklenebilirlik: **Bağımsız hizmetler, belirli hizmetleri gerektiği gibi yatay olarak ölçeklendirebilir. Hatta her servisin ETH 2.0'da bahsedilen shard olduğu kıyaslanabilir ancak Permaweb'in shard sayısında bir sınırı yoktur ve yatay olarak sonsuz genişleyebilir. Ayrıca aynı protokol standardı, belirli uygulamaların erişim hızını optimize etmek için bazı ağ geçitleri gibi farklı veri seti hizmetleri de sağlayabilir, bunlar yalnızca belirli uygulamaların verilerini önbelleğe alabilir ve işleyebilir.
**4. Yüksek kullanılabilirlik: ** Birden çok kullanılabilir ağ geçidi (mikro hizmet) ile uygulamanın tek bir arıza noktası olmaz ve daha iyi kullanılabilirliğe sahip olur.
Bu mimari, mikro hizmet mimarisinin tüm avantajlarını devralır ve blockchain uygulamalarının imkansız üçgen problemini ortadan kaldırır. Geleneksel blockchain uygulamaları, diğer iki özelliğin bütünlüğünü sağlamak için performans, güvenlik ve ademi merkeziyet arasında belirli bir özellikten vazgeçmelidir. SCP teorisine göre, katmanlı bir mimari tasarımın kullanılması nedeniyle, mutabakat, depolama katmanı ve genel protokol tarafından garanti edilecektir. protokolün açıklık derecesi (açık kaynak). Ethereum'un ademi merkeziyetçiliğinden bahsettiğimizde, düğümlerinin sayısına ek olarak, Ethereum yazılımının kendisinin standart bir protokol olduğunu da anlamalıyız.Kullanıcılar ve madenciler, fikir birliğine varmak için aynı protokol setini kullanırlar. yüksek derecede mutabakat merkezi. Ethereum söz konusu olduğunda, kullanıcıların ve geliştiricilerin büyük çoğunluğu şu anda infura.io tarafından sağlanan hizmetleri kullanıyor. infura.io merkezi bir hizmet olmasına rağmen, kullanıcılar istedikleri zaman Ethereum protokolünü dağıtabilir ve ağa otonom erişimi kullanabilir. Benzer şekilde, merkezi olmayan mikro hizmetler de yukarıdaki özellikleri karşılayabilir, ancak merkezi olmayan mikro hizmetler belirli bir VM mimarisi değildir (EVM gibi), ancak daha esnektir ve geleneksel mimarinin teorik modeline daha yakındır.Mikro hizmetler ile SCP teorisinin bir birleşimidir. Yeni nesil merkezi olmayan İnternet mimarisinin doğuşu.
Alıştırma: Arweave'den, Arweave'in ötesinde
Şu anda Permaweb'in ağ geçidi, veri bağlama, serileştirme ve indeksleme olmak üzere yalnızca dört hizmeti vardır ve bu hizmetler belirli standartları oluşturmuştur. Peki bir Permaweb örneği tam olarak neye benziyor? Spesifik olarak, dört standart hizmeti kullanarak bir Permaweb nasıl oluşturulur?
Şimdi Başvur
Arweave ekolojik geliştiricileri için bir iletişim platformu olan bir Permaweb uygulamasıdır (bundan böyle Şimdi olarak anılacaktır). Now'ın ana işlevi, kullanıcıların blog başlatması ve kullanıcıların bu içerikleri beğenebilmesidir.
Now'ın tüm verileri Arweave'de depolanır ve değişmez depolama katmanı Now'ın dağıtılmasını sağlar. Kullanıcı Now'ı açtığında, tarayıcı önce aşağıdaki şekilde gösterildiği gibi Arweave'in ağ geçidi hizmetinden bir ön uç çerçeve yükleyecektir, sayfa çerçevesi esas olarak Now'ın Header bileşenini içerir ve Now uygulamasının görüntüleme verilerini içermez .
Tarayıcı uygulama çerçevesini yükledikten sonra, Now'ın içerik görüntüleme bölümünün Loading damgalarını görüntülediğini görebiliriz.Şu anda Now uygulaması, uygulamanın verilerini almak için bir GraphQL isteği başlatıyor. Alma işleminin tamamlanması için birkaç saniye bekleyin ve Now uygulaması aşağıdaki şekilde gösterildiği gibi en son kullanıcı yorumlarını ve beğenilerini (Damgalayıcılar) gösterecektir:
Bu sayfada, başlatma çerçevesi ve tüm kullanıcı verilerinin yanı sıra sayfada sunulan tüm resimler ağ geçidi aracılığıyla elde edilir. Bu öğeler, Now'ın eksiksiz sayfasını oluşturmak için tarayıcıda hesaplanacak ve birleştirilecektir. Ağ geçidi, statik kaynak yükleme yeteneği sağlar ve dizin hizmeti, dinamik veri yükleme yeteneği sağlar.
Bir kullanıcı bir blog eklemek istediğinde, içeriği Arweave'e yüklemek için cüzdanını kullanabilir. Bu içerikler, Index Service'in bu içerikler için GraphQL sorgulama işlevi sağlayabilmesi için belirli Etiketler ile işaretlenecektir. Blog başarıyla yüklendikten sonra, Now uygulamasını tekrar yenileyin; yeni içerik, uygulamanın içerik ekranında görüntülenecektir.
Yukarıdaki şekil, Permaweb yazma ve okumanın temel sürecini göstermektedir. Pratik uygulamalarda Permaweb'in hem yazılması hem de okunması servis katmanı üzerinden gerçekleştirilecektir.
Ölçeklendirme
Mikro hizmetlerin en büyük avantajı, tamamen Now uygulamasından devralınacak olan ölçeklenebilirliktir. Now'a herhangi bir ağ geçidini kullanarak erişebiliriz:
/
Benzer ağ geçitleri, Now uygulamalarına neredeyse sonsuz performans vererek ölçeği sonsuza kadar genişletebilir.
SCP En İyi Uygulamaları
Permaweb'in mimarisinde alt katman, depolama katmanı olarak yalnızca Arweave'i kullanır. Ancak merkezi olmayan mikro hizmetler bununla sınırlı kalmamalı, SCP'nin en iyi mühendislik uygulamalarını keşfetmek için Permaweb ve mikro hizmet mimarisinin avantajlarını derinlemesine özümsemeliyiz.
Aşağıdaki resim, gelecekteki blockchain uygulama mimarisini açıklayan "Consensus Changes, Blockchain Application Paradigm Evolution Journey" makalesinden alınmıştır - kullanıcılar blockchain sisteminin kendisiyle değil, hizmet katmanıyla etkileşime girer. Blockchain uygulamaları, Şekil 1'den Şekil 3'e kadar evrim sürecinden geçti, daha fazla içerik okunabilir:
Yukarıdaki Şekil 3'ten görülebileceği gibi, uygulamanın dayandığı blok zinciri Arweave ile sınırlı değildir ve Bitcoin ve Ethereum da blok zinciri nesneleridir. uygulama Benzer şekilde, Permaweb ve merkezi olmayan mikro hizmetler de genişletilebilir ve depolama katmanının Arweave'i sınırlamasına gerek yoktur. Aynı zamanda, Bitcoin ve Ethereum da depolama katmanı olarak kullanılabilir. Bu sırada, depolama katmanı da diğer olabilir. blok zincir türleri. Olası bir en iyi uygulama mimarisi aşağıda gösterilmiştir:
Aşağıdakileri açıklamak için aşağıdan yukarıya sıralamayı kullanırız:
**Mutabakat katmanı: **Depolama katmanına Permaweb'in genişletilmesinden sonra isim vermek artık uygun değil.Orijinal depolama katmanını mutabakat katmanı olarak yeniden adlandırdık. Mutabakat katmanı herhangi bir blockchain sistemi olabilir ve bu sistemler kurcalanamaz ve izlenebilir.
**Hizmet katmanı: **Hizmet katmanı ile Permaweb arasındaki en büyük fark, standart protokolün alt katmanının Arweave depolama ile sınırlı olmaması ve herhangi bir blockchain sistemi için mikro hizmetlerin kurulabilmesidir. İndeks hizmetini örnek olarak alan Nansen, mevcut EVM genel zinciri için veri sorgulama yetenekleri sağlar ve birçok Dapps ve ön uç veri, Nansen'i bir veri kaynağı olarak doğrudan kullanabilir. KNN3 ayrıca, blok zinciri verileri için standartlaştırılmış bir ilişkisel sorgu katmanı oluşturarak benzer indeksleme yetenekleri sağlar ve KNN3 ayrıca Arweave GraphQL ile uyumlu depolama indeksleme yetenekleri sağlar. Bu mimaride, mikro hizmetler daha fazla standarda ve daha iyi mutabakat katmanı uyumluluğuna sahiptir.
**Uygulama katmanı: **Permaweb uygulamalarıyla sınırlı olmayan bu mimari, merkezi olmayan uygulamalar (Web3) ve Web2 uygulamalarını aynı anda destekleyebilir ve orijinal mimari sistemle tam uyumludur.
Özetleyin
Bilgisayar yazılımı mühendisliğinin son 30 yıldaki gelişimine baktığımızda ve son 10 yılda blockchain mühendisliğinin gelişimini düşündüğümüzde, küresel bir sanal makinenin (EVM gibi) artı bir Katman 2 genişlemesi olup olmadığını düşünmemiz gerekir. çözüm nihai merkezi olmayan sistemdir. çözüm?
Bu makale, Layer2 veya parçalama teknolojisinin fizibilitesini araştırmaz, ancak blockchain uygulaması için başka bir olasılık sunar. Bu makale, bir mühendislik uygulanabilir çözümünü yeniden düzenlemek için Storage Consensus Paradigm (SCP) fikri ve mikro hizmet mimarisi ile birleştirilmiş Arweave ekosisteminin Permaweb'ini örnek olarak alır. Bu çözüm, yalnızca güçlü bir genişleme kabiliyetine sahip olmakla kalmaz, aynı zamanda uygulamanın merkezi olmayan özelliklere sahip olmasına da izin verir. Daha da önemlisi, çözüm ayna görüntüsü değil, mühendislikte halihazırda uygulanmış bir mimari sistemdir.
Referans
1. Arweave'in potansiyeli, Filecoin'in yerini alacak bir dosya değil, İskenderiye kitaplığını canlandırmak içindir
2. Mutabakatın evrimi, blockchain uygulama paradigmasının gelişimi
3. Permaweb ile Yemek Pişirme
4. Blockchain Storage ARWEAVE: Turing Machine'in Kağıt Bandı, Yeni Güvenilir Bilgi İşlem Paradigması
5. Arweave'in gelişiminin ve depolama konsensüsü paradigmasının kısa bir geçmişi
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
Yeni nesil İnternet Permaweb'in prototipinin ortaya çıkarılması: SCP teorisi altındaki merkezi olmayan mikro hizmet mimarisi
Yazar: Outprog @ PermaDAO Katılımcısı
İnceleyen: Xiaosong HU @ PermaDAO'nun Katılımcısı
Permaweb, Arweave Ekosisteminin önerdiği yeni nesil İnternet mimarisidir.Permaweb, uygulamaların ve web sitelerinin sürekli erişilebilir olduğunu vurgular.İnternetin anılara sahip olmasını ve onları asla unutmamasını sağlar. Aynı zamanda Permaweb Severless özelliğine sahiptir.Geliştiricilerin inşaat sürecinde front-end ve back-end dağıtmasına gerek yoktur.Geliştirilen tüm servisler Permaweb'in temel servis katmanı tarafından sağlanacaktır.
Permaweb kavramı ve vizyonu hakkında daha fazla bilgi için, Permaweb kavramı hakkında daha fazla bilgi edinmek için Öğretmen Liu Yi tarafından yazılan "Arweave'in Potansiyeli İskenderiye Kütüphanesini Canlandırmak, Bir Filecoin Yerine Değil" yazısını okuyabilirsiniz.
Bu makale, Permaweb'i SCP teorisi ile birlikte teknik bir bakış açısıyla yorumlayacaktır.
Temel çerçeve
Permaweb üç katmanlı bir mimari kullanır, en üst katman kullanıcı odaklı arayüz olan uygulama katmanıdır. Orta katman, uygulama için arka uç hizmetleri sağlayan hizmet katmanıdır. Alt katman, uygulamalar için veri depolama hizmetleri sağlamak üzere Arweave'i kullanan depolama katmanıdır.
Permaweb'in mimarisi Web2 mimarisinden çok farklı değildir.Uygulama katmanı geleneksel Web2 front-end'e karşılık gelir, hizmet katmanı back-end'e karşılık gelir ve depolama katmanı fiziksel sunucu veya veritabanına karşılık gelir.
Permaweb ve Web2 arasındaki en büyük fark merkezi olmayan depolama kullanmaktır. Permaweb uygulaması kalıcı depolama alanı olan Arweave'i entegre ettikten sonra uygulamanın içeriğine müdahale etmek ve silmek çok zorlaşacak ve uygulama merkeziyetçilik özelliği kazanacaktır. Permaweb'in mimarisi Web2 ile yüzeysel benzerlikler taşırken, altında yatan teknoloji ve tasarım felsefesi temel farklılıklar yaratıyor.
Permaweb'in uygulama mimarisi aşağıdaki şekilde gösterilmiştir
Fotoğraf Permaweb yemek kitabından
Aşağıda, Permaweb'in üç katmanlı mimarisi ayrıntılı olarak tanıtılacaktır
depolama katmanı
Depolama katmanı Permaweb'in çekirdeğidir.Depolama katmanı blockchain teknolojisini kullanmıyorsa Permaweb ile Web2 arasında hiçbir fark olmayacaktır. Permaweb'in depolama katmanı mutlaka Arweave ile sınırlı değildir. Teorik olarak, eksiksiz bir Permaweb oluşturmak için depolama katmanı olarak Bitcoin veya Ethereum kullanmak da mümkündür, ancak geliştiricilerin ve kullanıcıların aşırı depolama maliyetlerini karşılaması zordur. Arweave şu anda kalıcı depolama için en profesyonel blok zinciridir ve 1 GB için yalnızca 5 ABD Doları tutarındadır, bu da Permaweb için en iyi seçimdir.
Öyleyse, depolama katmanı IPFS kullanabilir mi? IPFS kullanılırsa, Permaweb veri izlenebilirlik özelliğini kaybeder.IPFS'nin veri CID'si, değiştirilemeyeceğini garanti edebilir, ancak IPFS, blockchain teknolojisini kullanmaz. IPFS verilerinin bir blok zaman damgası yoktur, bu nedenle verilerin ne zaman üretildiğini söylemek imkansızdır; aynı zamanda veriler, IPFS hizmet düğümü kapatıldıktan sonra kaybolacaktır ve verilerin kalıcı olarak saklanacağının garantisi yoktur. izlenebilir
Hizmet katmanı
Birleştirilmiş bir ara yazılım olarak hizmet katmanı, uygulamalar için durum bilgisi olmayan ve yatay olarak genişletilebilen Web2 mikro hizmet kümelerine benzer API'ler sağlar. Genellikle, Permaweb'in hizmet katmanı standart arabirimler ve protokoller sağlar (Web2'nin gRPC'sine veya Thrift'e tamamen açık kaynak ve açık protokollere benzer), bu arabirimler ve protokoller tamamen açık ve açık kaynaktır ve hizmetleri dağıtan herhangi bir hizmet sağlayıcı aynısını sağlayabilir Protokol standartlarına göre API. Herhangi bir uygulama, standart protokoller kullanılarak geliştirildiği sürece farklı servisler üzerinde çalıştırılabilir ve kullanılabilir.
Şu anda Arweave'in hizmet katmanı dört temel bileşen içerir:
Mevcut standart protokol yalnızca yukarıdaki dört modülü içerir ve Permaweb'in hizmet katmanı gelecekte yeni standardı daha da genişletebilir.
Uygulama katmanı
Permaweb uygulamaları sunucusuz özelliklere sahiptir, geliştiricilerin herhangi bir sunucu dağıtmasına gerek yoktur. Hizmet katmanı, uygulama katmanı için standart bir arayüz sağladığından, spesifikasyonlara göre geliştirilen uygulamalar herhangi bir hizmet katmanında açılabilir ve kullanılabilir.
**Etkileşim: **Kullanıcıların yalnızca hizmet katmanıyla etkileşime girmesi gerekir ve temel blok zinciriyle etkileşime girmesi gerekmez.
Özetlemek gerekirse, Permaweb, etkileşim açısından Web2 ile aynı deneyimi elde edebilir.
Sansür Direnci: Standart protokoller ve arabirimler, sansüre dayanıklı uygulamalar sağlar. Aşağıda listelenen URL, yemek kitabı adlı bir Permaweb uygulamasıdır:
Yemek kitabı uygulamasına herhangi bir URL açılarak erişilebildiği ve web sitesine dünya çapında farklı ağ geçitleri ve sunucular tarafından hizmet verildiği bulunabilir. arweave.asia erişilemez hale gelirse, kullanıcılar uygulamayı kullanmaya devam etmek için birkaç başka URL'yi kullanmaya devam edebilir. Tüm ağ geçitleri kapatılsa bile yemek kitabı verileri Arweave'de saklanır ve servis sağlayıcının yemek kitabı uygulamasını istediği zaman geri yükleyebilmesi için veriler kaybolmaz.
Depolama katmanı olarak Arweave kalıcı depolamanın kullanılması, her bir Permaweb uygulamasının verilerin merkezden dağıtılmasını garanti edebilir; hizmet katmanı olarak standartlaştırılmış, açık kaynaklı bir protokol kullanmak, mücbir sebepler nedeniyle bireysel sunucuların kapatılmasından kaynaklanan inceleme riskini önleyebilir. Permaweb uygulamaları merkezi değildir ve sansür karşıtıdır.
SCP'nin mikro hizmet sürümü
Permaweb'in mimarisi, geleneksel Web2'ninkine benzer.Özünde, Permaweb, merkezi olmayan depolamaya dayalı bir dizi mikro hizmet uygulama mimarisidir.
Mikro hizmetler, büyük ve karmaşık bir uygulamayı bir dizi daha küçük, daha bağımsız hizmet birimlerine bölen, Web2 geliştirmede kullanılan bir yazılım mimarisi modelidir. Her mikro hizmet, bağımsız olarak geliştirilebilen, dağıtılabilen ve çalıştırılabilen bağımsız bir işlevsel modüldür. Bu mikro hizmetler, HTTP veya mesaj kuyrukları gibi hafif iletişim protokolleri kullanılarak uygulanabilen, iyi tanımlanmış API'ler aracılığıyla birbirleriyle iletişim kurar.
Permaweb'in genel mimarisi mikro hizmetlere çok benzer ve her Permaweb uygulaması standartlaştırılmış ve bağımsız hizmet birimlerinden oluşur. Aynı tasarım konsepti, Permaweb'e büyük ve karmaşık uygulamalar oluşturma yeteneği verir.
Geleneksel mikro hizmetlerden farkı, Permaweb'in SCP ile uyumlu olması ve depolama mutabakatına dayalı bir uygulama olmasıdır. Permaweb, SCP'nin mikro hizmet mimarisi sürümüdür.
Uygulamaları geliştirmek için SCP kullanırken, geleneksel uygulama mimarisi çok fazla ayarlama gerektirmez, yalnızca DB'nin (depolama katmanı) değiştirilemez ve izlenebilir bir blok zinciri depolaması ile değiştirilmesi gerekir.
Avantaj
Bu merkezi olmayan mikro hizmet mimarisi kullanılarak geliştirilen uygulamalar, merkeziyetsizlik, değişmezlik, izlenebilirlik, anti-sansür ve daha fazlası dahil olmak üzere blok zincirinin aynı özelliklerini elde edebilir.
Geleneksel mikro hizmet mimarisi gibi, bu mimari de aşağıdaki geliştirme avantajlarına sahiptir:
**1. Modülerlik ve sürdürülebilirlik: **Her biri belirli bir işlevden sorumlu bağımsız hizmetler. Bu standartlaştırılmış ve modüler tasarım, her hizmetin bağımsız olarak geliştirilmesini, test edilmesini, devreye alınmasını ve sürdürülmesini sağlayarak uygulamanın sürdürülebilirliğini ve esnekliğini artırır.
**2. Bağımsızlık: **Her hizmet farklı ekipler tarafından geliştirilebilir ve sürdürülebilir. DAO'nun özellikleriyle daha uyumludur, farklı kuruluşların ve bireylerin Permaweb için en iyi performansı ve geliştirme hızını sağlamasına ve geliştiricilerin en uygun teknoloji yığınını ve araçlarını seçmesine olanak tanır. Arweave ekosisteminde farklı ekiplerin farklı hizmetler sunduğunu görebiliriz.Örneğin, ar.io ağ geçitleri sağlar, bundlr ve açık kaynak arseeding veri bağlama hizmetleri sağlar, everPay ve Permaswap özel finansal hizmetler sağlar vb.
**3. Ölçeklenebilirlik: **Bağımsız hizmetler, belirli hizmetleri gerektiği gibi yatay olarak ölçeklendirebilir. Hatta her servisin ETH 2.0'da bahsedilen shard olduğu kıyaslanabilir ancak Permaweb'in shard sayısında bir sınırı yoktur ve yatay olarak sonsuz genişleyebilir. Ayrıca aynı protokol standardı, belirli uygulamaların erişim hızını optimize etmek için bazı ağ geçitleri gibi farklı veri seti hizmetleri de sağlayabilir, bunlar yalnızca belirli uygulamaların verilerini önbelleğe alabilir ve işleyebilir.
**4. Yüksek kullanılabilirlik: ** Birden çok kullanılabilir ağ geçidi (mikro hizmet) ile uygulamanın tek bir arıza noktası olmaz ve daha iyi kullanılabilirliğe sahip olur.
Bu mimari, mikro hizmet mimarisinin tüm avantajlarını devralır ve blockchain uygulamalarının imkansız üçgen problemini ortadan kaldırır. Geleneksel blockchain uygulamaları, diğer iki özelliğin bütünlüğünü sağlamak için performans, güvenlik ve ademi merkeziyet arasında belirli bir özellikten vazgeçmelidir. SCP teorisine göre, katmanlı bir mimari tasarımın kullanılması nedeniyle, mutabakat, depolama katmanı ve genel protokol tarafından garanti edilecektir. protokolün açıklık derecesi (açık kaynak). Ethereum'un ademi merkeziyetçiliğinden bahsettiğimizde, düğümlerinin sayısına ek olarak, Ethereum yazılımının kendisinin standart bir protokol olduğunu da anlamalıyız.Kullanıcılar ve madenciler, fikir birliğine varmak için aynı protokol setini kullanırlar. yüksek derecede mutabakat merkezi. Ethereum söz konusu olduğunda, kullanıcıların ve geliştiricilerin büyük çoğunluğu şu anda infura.io tarafından sağlanan hizmetleri kullanıyor. infura.io merkezi bir hizmet olmasına rağmen, kullanıcılar istedikleri zaman Ethereum protokolünü dağıtabilir ve ağa otonom erişimi kullanabilir. Benzer şekilde, merkezi olmayan mikro hizmetler de yukarıdaki özellikleri karşılayabilir, ancak merkezi olmayan mikro hizmetler belirli bir VM mimarisi değildir (EVM gibi), ancak daha esnektir ve geleneksel mimarinin teorik modeline daha yakındır.Mikro hizmetler ile SCP teorisinin bir birleşimidir. Yeni nesil merkezi olmayan İnternet mimarisinin doğuşu.
Alıştırma: Arweave'den, Arweave'in ötesinde
Şu anda Permaweb'in ağ geçidi, veri bağlama, serileştirme ve indeksleme olmak üzere yalnızca dört hizmeti vardır ve bu hizmetler belirli standartları oluşturmuştur. Peki bir Permaweb örneği tam olarak neye benziyor? Spesifik olarak, dört standart hizmeti kullanarak bir Permaweb nasıl oluşturulur?
Şimdi Başvur
Arweave ekolojik geliştiricileri için bir iletişim platformu olan bir Permaweb uygulamasıdır (bundan böyle Şimdi olarak anılacaktır). Now'ın ana işlevi, kullanıcıların blog başlatması ve kullanıcıların bu içerikleri beğenebilmesidir.
Now'ın tüm verileri Arweave'de depolanır ve değişmez depolama katmanı Now'ın dağıtılmasını sağlar. Kullanıcı Now'ı açtığında, tarayıcı önce aşağıdaki şekilde gösterildiği gibi Arweave'in ağ geçidi hizmetinden bir ön uç çerçeve yükleyecektir, sayfa çerçevesi esas olarak Now'ın Header bileşenini içerir ve Now uygulamasının görüntüleme verilerini içermez .
Tarayıcı uygulama çerçevesini yükledikten sonra, Now'ın içerik görüntüleme bölümünün Loading damgalarını görüntülediğini görebiliriz.Şu anda Now uygulaması, uygulamanın verilerini almak için bir GraphQL isteği başlatıyor. Alma işleminin tamamlanması için birkaç saniye bekleyin ve Now uygulaması aşağıdaki şekilde gösterildiği gibi en son kullanıcı yorumlarını ve beğenilerini (Damgalayıcılar) gösterecektir:
Bu sayfada, başlatma çerçevesi ve tüm kullanıcı verilerinin yanı sıra sayfada sunulan tüm resimler ağ geçidi aracılığıyla elde edilir. Bu öğeler, Now'ın eksiksiz sayfasını oluşturmak için tarayıcıda hesaplanacak ve birleştirilecektir. Ağ geçidi, statik kaynak yükleme yeteneği sağlar ve dizin hizmeti, dinamik veri yükleme yeteneği sağlar.
Bir kullanıcı bir blog eklemek istediğinde, içeriği Arweave'e yüklemek için cüzdanını kullanabilir. Bu içerikler, Index Service'in bu içerikler için GraphQL sorgulama işlevi sağlayabilmesi için belirli Etiketler ile işaretlenecektir. Blog başarıyla yüklendikten sonra, Now uygulamasını tekrar yenileyin; yeni içerik, uygulamanın içerik ekranında görüntülenecektir.
Yukarıdaki şekil, Permaweb yazma ve okumanın temel sürecini göstermektedir. Pratik uygulamalarda Permaweb'in hem yazılması hem de okunması servis katmanı üzerinden gerçekleştirilecektir.
Ölçeklendirme
Mikro hizmetlerin en büyük avantajı, tamamen Now uygulamasından devralınacak olan ölçeklenebilirliktir. Now'a herhangi bir ağ geçidini kullanarak erişebiliriz:
Benzer ağ geçitleri, Now uygulamalarına neredeyse sonsuz performans vererek ölçeği sonsuza kadar genişletebilir.
SCP En İyi Uygulamaları
Permaweb'in mimarisinde alt katman, depolama katmanı olarak yalnızca Arweave'i kullanır. Ancak merkezi olmayan mikro hizmetler bununla sınırlı kalmamalı, SCP'nin en iyi mühendislik uygulamalarını keşfetmek için Permaweb ve mikro hizmet mimarisinin avantajlarını derinlemesine özümsemeliyiz.
Aşağıdaki resim, gelecekteki blockchain uygulama mimarisini açıklayan "Consensus Changes, Blockchain Application Paradigm Evolution Journey" makalesinden alınmıştır - kullanıcılar blockchain sisteminin kendisiyle değil, hizmet katmanıyla etkileşime girer. Blockchain uygulamaları, Şekil 1'den Şekil 3'e kadar evrim sürecinden geçti, daha fazla içerik okunabilir:
Yukarıdaki Şekil 3'ten görülebileceği gibi, uygulamanın dayandığı blok zinciri Arweave ile sınırlı değildir ve Bitcoin ve Ethereum da blok zinciri nesneleridir. uygulama Benzer şekilde, Permaweb ve merkezi olmayan mikro hizmetler de genişletilebilir ve depolama katmanının Arweave'i sınırlamasına gerek yoktur. Aynı zamanda, Bitcoin ve Ethereum da depolama katmanı olarak kullanılabilir. Bu sırada, depolama katmanı da diğer olabilir. blok zincir türleri. Olası bir en iyi uygulama mimarisi aşağıda gösterilmiştir:
Aşağıdakileri açıklamak için aşağıdan yukarıya sıralamayı kullanırız:
Özetleyin
Bilgisayar yazılımı mühendisliğinin son 30 yıldaki gelişimine baktığımızda ve son 10 yılda blockchain mühendisliğinin gelişimini düşündüğümüzde, küresel bir sanal makinenin (EVM gibi) artı bir Katman 2 genişlemesi olup olmadığını düşünmemiz gerekir. çözüm nihai merkezi olmayan sistemdir. çözüm?
Bu makale, Layer2 veya parçalama teknolojisinin fizibilitesini araştırmaz, ancak blockchain uygulaması için başka bir olasılık sunar. Bu makale, bir mühendislik uygulanabilir çözümünü yeniden düzenlemek için Storage Consensus Paradigm (SCP) fikri ve mikro hizmet mimarisi ile birleştirilmiş Arweave ekosisteminin Permaweb'ini örnek olarak alır. Bu çözüm, yalnızca güçlü bir genişleme kabiliyetine sahip olmakla kalmaz, aynı zamanda uygulamanın merkezi olmayan özelliklere sahip olmasına da izin verir. Daha da önemlisi, çözüm ayna görüntüsü değil, mühendislikte halihazırda uygulanmış bir mimari sistemdir.
Referans
1. Arweave'in potansiyeli, Filecoin'in yerini alacak bir dosya değil, İskenderiye kitaplığını canlandırmak içindir
2. Mutabakatın evrimi, blockchain uygulama paradigmasının gelişimi
3. Permaweb ile Yemek Pişirme
4. Blockchain Storage ARWEAVE: Turing Machine'in Kağıt Bandı, Yeni Güvenilir Bilgi İşlem Paradigması
5. Arweave'in gelişiminin ve depolama konsensüsü paradigmasının kısa bir geçmişi