區塊鏈研究實驗室|如何使用Hyperledger Caliper在谷歌雲上測試您的區塊鏈

買賣虛擬貨幣

測試區塊鏈應用程式可能很麻煩,主要是因為它們非常複雜的,需要資源要求高。在雲上測試區塊鏈應用程式可以提高測試過程的效率,以及實現更真實的測試環境。

本文提供了有關如何在谷歌雲上使用Hyperledger Caliper(提交302665)的指南,介紹了測試Hyperledger Composer應用程式的場景,Hyperledger Composer應用程式是一個便於Hyperledger Fabric應用程式開發的區塊鏈框架。儘管如此,此測試過程適用於Hyperledger Caliper支援的所有區塊鏈(Hyperledger Burrow,Hyperledger Fabric,Hyperledger Iroha,Hyperledger Sawtooth等等)。

配置測試環境

1、建立一個私有儲存庫(例如,在Github上)。

2、將Hyperledger Caliper專案分叉到您的私人倉庫:

git clone--bare https://github.com/hyperledger/caliper.git
cd caliper.git
git push --mirror https://github.com/USERNAME/CALIPER-PRIVATE-REPO.git
cd ..
rm -rf caliper.git

3、複製你個人的repo

git clone https://github.com/USERNAME/CALIPER-PRIVATE-REPO.git

4、在CALIPER-PRIVATE-REPO / packages / caliper-samples / benchmark / composer上,建立一個包含應用程式名稱的資料夾,例如:我的網路。

5、在my-network資料夾中,貼上此儲存庫中的配置和測試檔案的內容。在以後的文章中,我將解釋如何編寫測試(my-network.js)和基準測試配置(config.yaml)。

6、您應該使用Composer(BNA存檔)建立一個開發的業務網路。如果您尚未開發業務網路,仍可以將Caliper配置為測試預設業務網路。

在CALIPER-PRIVATE-REPO-justicechain / packages / caliper-samples / src / contract / composer上,建立一個名為my-network的資料夾。將您的業務網路存檔檔案(解壓縮的BNA檔案)貼上到該資料夾中。

您應該有一個lib資料夾,一個models資料夾,以及檔案package.json,permission.acl和可選的README.md檔案。

請注意,在package.json上,網路的名稱和版本必須與composer.json上的名稱和版本一致。示例package.json:

{  
"engines":{  
"composer":"^0.20.0"
   },
"name":"my-network",
"version":"0.2.6-deploy.1",

...ETC

7、您必要要有檔案來測試您的應用程式。將它們推送到您的儲存庫:

git add *
git commit -m"add benchmark files"
git push origin master

谷歌雲配置

1、在谷歌雲上建立一個帳戶。新帳戶可以申請免費試用補助金。建立專案,然後啟用Compute Instance API。

2、在Compute Engine  - > VM Instances中,單擊Create a new instance。

3、啟動你的例項

4、單擊Connect  -  SSH。

5、安裝Hyperledger Caliper的先決條件(感謝Daz Wilkin):

docker-CE

sudo apt-get update
sudo apt-getinstall \
    linux-image-extra-$(uname -r) \
    linux-image-extra-virtual
sudo apt-getupdate
sudo apt-getinstall \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-keyadd -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

sudo apt-getupdate
sudo apt-getinstall docker-ce
sudo usermod -aG docker $USER
sudo systemctl enable docker
docker --version

docker-compose

sudo curl -L https://github.com/docker/compose/releases/download/1.16.1

/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Golang (optional)
VERSION=1.9.1
OS=linux
ARCH=amd64
sudo curl \
--location https://golang.org/dl/go$VERSION.$OS-$ARCH.tar.gz \
--output go$VERSION.$OS-$ARCH.tar.gz
sudo tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
export PATH=$PATH:/usr/local/go/bin
go version

6、使用Caliper和您的區塊鏈應用程式將您的私人儲存庫克隆到您的Google Compute例項。

測試您的應用程式

要執行基準測試,請導航到caliper / packages / caliper-samples。

要使用CouchDB執行來測試您的應用程式:

caliper基準測試執行-w ./ -c benchmark / composer / justice / config.yaml -n benchmark / composer / justice / composer.json

要使用LevelDB執行來測試您的應用程式:

測徑器基準執行-w./-c benchmark/composer/justice/config.yaml-n benchmark/composer/justice/composer-level.json

基準測試的結果將在終端上報告。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;