Yeni Başlayanlar için Hyperledger Yapı Eğitimi: Kapsamlı Kılavuz
Yayınlanan: 2021-02-24Çok sayıda Hyperledger çerçevesi ve aracı mevcuttur . En başarılı olanlardan biri Hyperledger Fabric. 2016'da piyasaya sürülmesinden bu yana, Hyperledger Fabric, kurumsal uygulamalar geliştirmek için popüler bir çerçeve haline geldi. Yeni başlayanlar için bu Hyperledger Fabric eğitiminde , tam olarak ne olduğundan, yapının ne olduğundan ve üzerinde ilk uygulamanızı nasıl çalıştıracağınızdan bilmeniz gereken her şeyi size anlatacağız. Daha fazla gecikmeden Hyperledger Fabric eğitimimize başlayalım .
İçindekiler
Hyperledger Kumaş Nedir?
Hyperledger Fabric, kurumsal düzeyde blok zinciri tabanlı bir çerçevedir. Uygulamalar ve iş çözümleri geliştirmek için DLT (Dağıtılmış Defter Teknolojisi) izni sağlayan açık kaynaklı bir çerçevedir. Hyperledger Fabric'in temel özelliklerinden bazıları şunlardır:
- Son derece modüler mimari
- Tak ve çalıştır konsensüs
- Sağlamlık ve EVM Desteği
- JSON sorgularını, anahtar tabanlı sorguları ve diğer sorgulanabilir verileri destekler
- Çok dilli akıllı sözleşme desteği
Hyperledger Fabric'in temel bilgileri ve temel özellikleriyle, yeni başlayanlar için bu Hyperledger Fabric öğreticisinin bir sonraki bölümüne geçelim .
Dünyanın En İyi Üniversitelerinden Online Yazılım Kursları Öğrenin. Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.
Hyperledger Fabric Sistem Mimarisi nedir?
Temel Hyperledger Fabric eğitimimize başlamadan önce , temel mimari hakkında bilgi edinmek önemlidir. Yapı hakkında sağlam bir bilgiye sahip olmak, çerçevenin nasıl çalıştığını anlamanıza yardımcı olacaktır.
- İşlemler : İki tür işlem vardır: dağıtma ve çağırma. Dağıtım işlemleri, blok zinciri tarafından çalıştırılan programlar olan zincir kodları oluşturmak için kullanılır. Öte yandan, çağırma işlemleri, önceden konuşlandırılmış zincir kodlarıyla bağlamda işlemleri yürütmek için kullanılır.
- Veri yapıları : Herhangi bir blok zinciri çerçevesi gibi, Hyperledger Fabric'te kullanılan veri yapıları da anahtar/değer çiftlerindedir. Zincir kodları, koy ve al işlemleriyle verileri manipüle eder.
- Defter : Zincirdeki tüm başarılı ve başarısız değişikliklerin bir dizisidir.
- Düğümler : Bir ağın iletişim aracıları veya diğer bir deyişle varlıklarıdır.
- Müşteri : Son kullanıcılar veya onlar adına hareket eden biri.
- Eş : Zincirin durumlarını ele alırlar ve her şeyin sorunsuz çalışmasını sağlarlar.
Yeni Başlayanlar İçin İlk Uygulamalarını Geliştirmek için Hyperledger Fabric Eğitimi
Artık temel mimariyi bildiğimize göre, ilk Hyperledger Fabric uygulamamızı geliştirmenin zamanı geldi.
İlk Ağı Oluşturma ve Başlatma
Bu adım, uygulamamızı geliştirmeye başlamak için ön koşulların ve örnek bileşenlerin yüklenmesini içerir.
Ağ Oluşturma
Yapmanız gereken ilk şey, ağı oluşturmak ve başlatmaktır. Çalışan bir ağ olmadan uygulamanız hiçbir işe yaramaz. Hyperledger Fabric'in önkoşul kılavuzuna ve ikili dosyalarına, Docker görüntülerine ve örnek kurulum kılavuzuna göz atın .
Her şey yüklendikten sonra, örnek ağ ile depoya gitmek için aşağıdaki komutu kullanın.
cd kumaş örnekleri/ilk ağ
Ardından, ağı çalıştırmak için byfn.sh komut dosyasını kullanın. Bu ağı çalıştırmak, ağ iletişimini kolaylaştıracak ve diğer sürece yardımcı olacak kapsayıcılar, eşler, zincir kod vb. gibi temel öğeleri başlatacaktır. Örnek ağı çalıştırdıktan sonra, yapıtları oluşturma zamanı.
Artifaktların Oluşturulması
Eserleri oluşturmak için aşağıdaki kodu kullanın ve ardından gerekli ayrıntıları doldurmaya başlamak için onay istendiğinde “Y” tuşuna basın.
.byfn.sh oluştur
Ağa Güç Verme
Yapıları oluşturduktan sonra, ağa güç vermeniz gerekir. Yeni eşlerin ağa katılmasına izin vermek için zincir kodu ve kapsayıcılar dahil tüm bileşenleri ateşleyecektir. Ağa güç sağlamak için aşağıdaki kodu kullanın:
./byfn.sh yukarı
Hyperledger Fabric zincir kodu için varsayılan dil Go'dur. Ancak sırasıyla aşağıdaki komutları kullanarak Node.js veya Java kullanmaya geçebilirsiniz:
.byfn.sh yukarı -l düğümü
.byfn.sh yukarı -l java
Aşağıdaki kodlardan birini kullanarak birden çok programlama dili kullanmayı da seçebilirsiniz:
./byfn.sh yukarı -o etcdraft
./byfn.sh yukarı -o kafka
Ağı Başlatma
Şimdi ağı başlatacağız. Ama ondan önce yapmamız gerekenler:
- uygulamamızın alt dizinini al
- kumaş örneği deposunun yerel bir klonunu yapın
Ağı başlatmak için aşağıdaki komut dosyasını kullanın:
./startFabric.sh javascript
Ağı başlattıktan sonra, uygulamanızı geliştirmek için sipariş verenlerden eşlere ve sertifika yetkililerine kadar her şeye sahip olacaksınız. Uygulamanın alt dizinini kullandığımız için akıllı bir sözleşme otomatik olarak başlatılacaktır.
İlk Uygulamanızı Yükleme
Uygulamayı kurmak ve başlatmak için gereken bağımlılıkları kurmak için aşağıdaki kodu kullanın.
npm kurulumu
Sertifika Yetkilileriyle Bağlantı Kurma
Ağ çalışır duruma geldiğinde, zincire kullanıcı eklememize izin verebilecek yetkililerle iletişim kurarak başlayalım. Bunu yapmak için, Sertifika İmzalama İsteğinden (CSR) geçmemiz gerekir. Sertifika yetkilisiyle iletişime geçmek ve genel, özel ve x.509 sertifikası oluşturmak için aşağıdaki komutu kullanın.
düğüm enrollAdmin.js
Bilgileriniz artık cüzdanda tutulacak. Benzer şekilde, herhangi bir yeni kullanıcı eklemek için aynı süreçten geçmeniz ve aşağıdaki kodu kullanmanız gerekir:
düğüm reisterUser.js
Bu kod kullanıcıyı ekleyecek ve detaylar cüzdanda tutulacaktır.
Defter Sorgulama
Blok zinciri ağı üzerinden bir defteri sorgulamak ve sonuçları almak için okuma sorgularını kullanabilirsiniz. Defterler salt okunur olduğundan uygulama herhangi bir yazma sorgusu yürütmez.
Defterdeki tüm verileri almak için aşağıdaki kodu kullanın:
düğüm sorgusu.js
Ardından, verileri iletmek için bir bağlantı kurmamız gerekiyor. Bağlantı yapıldıktan sonra, uygulamanın ağa bağlanmasına izin vermek için bir ağ geçidi oluşturun. Aşağıdaki kod satırı tüm bunları yapmanıza yardımcı olacaktır.
const { FileSystemWallet, Gateway } = require('fabric-network');
const ağ geçidi = yeni Ağ Geçidi();
wait gateway.connect(ccp, {cüzdan, kimlik: 'user1' });
const sözleşme = network.getContract('altdizin_adı');
Yukarıdaki koddaki CPP, kullanıcı bilgilerine erişmek ve doğrulamak için kullanılır. Kodun son satırı belirli bir kanala bağlanıyor. Tüm blok zinciri ağı birden fazla kanalda çalıştığı için bu çok önemlidir.
Sözleşmeyi Anlamak
Uygulamanın akıllı sözleşmesine erişmek için chaincode/altdizin_adı/javascript/lib alt dizinine gidin. Yukarıdaki dizinde, alt dizin_adı, uygulamanızın alt dizininin adı olacaktır. Buradan aldığınız application_name.js dosyasını bir düzenleyicide açın. Bu dosyada akıllı sözleşmeyi ve Sözleşme sınıfında tanımlanan tüm işlemleri alacaksınız. Başvurunuzun arabalarla ilgili olduğunu varsayalım, işlem ayrıntıları şöyle görünecektir:
zaman uyumsuz queryCar(ctx, carNumber) {…}
Okuyun: Neden Blockchain Gelecektir?
Defter Güncelleme
Yeni başlayanlar için bu Hyperledger Fabric öğreticisinin son kısmı , defteri güncellemektir. Aynı araba örneğini göz önünde bulundurarak loga nasıl yeni araba ekleyebileceğinize bakalım. Deftere yeni bir araç eklemek için aşağıdaki kod satırını kullanın.
wait Contract.submitTransaction('createCar', 'CAR15', 'Sahip', 'Marka', 'ArabaModel', 'Renk');
Yukarıdaki komutu kullanmak, belirtilen öznitelik değerleriyle birlikte yeni bir araba yaratacaktır. Bu yeni işlemi deftere göndermek için aşağıdaki kodu yazın:
düğüm çağırma.js
Bu, defteri başarıyla güncelleyecektir.
Çözüm
Bu bizi Hyperledger Fabric eğitimimizin sonuna getiriyor . Blockchain teknolojisi ve Hyperledger Fabric çerçevesi, dünya çapında birçok endüstride devrim yaratma potansiyeline sahiptir. Bu öğretici, Hyperledger Fabric çerçevesinin nasıl çalıştığı ve ilk işleminizi ve uygulamanızı bunun üzerinde nasıl çalıştıracağınız hakkında kısa bir fikir verdi. Ayrıntılara girmek ve çerçeveyi kullanarak gerçek iş uygulamalarının nasıl geliştirileceğini öğrenmek istiyorsanız, upGrad ve IIIT Bangalore'nin blockchain teknolojisi kursunda Gelişmiş sertifika programına başvurabilirsiniz .
Blok zinciri teknolojisi ve Ethereum, Hyperledger Fabric, Dağıtılmış Uygulama Geliştirme (akıllı sözleşme geliştirme, arka uç geliştirme, API) gibi çerçevelerde 250 saatten fazla öğrenme materyali. Blockchain geliştirme alanında kariyer yapmak istiyorsanız, devam edin ve bugün başvurun.