2017-10-31 3 views
0

1つのチャネルに参加している4ピアを持つビジネスネットワークがある場合、どのピアがトランザクション提案を受け入れ、どのピアがトランザクションを承認し、どのピアがトランザクションペイロードを状態データベースにコミットしているのかを判断する方法は?ハイパージッガーネットワークでピアタイプを確認

答えて

1

すべてのピアは、処理後にトランザクションを受け入れるか、拒否します。 イベントを購読してトランザクションのステータスの更新を受け取ることで、それが受け入れられたかどうかを知ることができます。

トランザクションを推薦するピアは、そのSerializedIdentityを裏書きの中に入れます。私はすべての梨がトランザクションを支持し、理解しないよう

var block common.Block 
data := block.Data.Data 
env, err := utils.GetEnvelopeFromBlock(envBytes) 
payload, err := utils.GetPayload(env) 
tx, err := utils.GetTransaction(payload.Data) 
ccActionPayload, err := utils.GetChaincodeActionPayload(tx.Actions[0].Payload) 
endorsements := ccActionPayload.Action.Endorsements 
var endorsers []*peer.Endorser 
for _, e := range endorsements { 
    endorsers = append(endorsers, e.Endorser) 
} 
+0

しかし:だから、あなたはのようなコードとの取引に掘る必要がある特定のトランザクションを承認したピア知っています。ピアのサブセットはエンドーサであり、承認されたトランザクションは新しいブロックの一部としてチャンネル・レジャーに、そして各梨の元帳コピーにすべて追加されます。一方、すべての同僚が通勤者ではなく、同僚の一部だけが資産を州のデータベースにコミットします。私は正しい? –

+0

チャネルに参加したすべてのピアは、そのチャネルのコミッターです。 – yacovm