Fabric中Anchor Peer的用法
Fabric中,每個組織可以指定Anchor Peer蒿柳,其他組織的節(jié)點就可以將Gossip消息發(fā)送到這個Anchor Peer上,進而Anchor Peer將獲得整個網(wǎng)絡(luò)信息,區(qū)塊廣播到本組織內(nèi)畏浆。
在指定Anchor Peer時税稼,節(jié)點自己首先需要配置gossip.externalEndpoint烦秩,默認為空,其他節(jié)點在發(fā)送消息到非本組織節(jié)點時郎仆,如果目的節(jié)點externalEndpoint為空則不會發(fā)送闻镶;然后在創(chuàng)建Channel時指定Anchor peer,對Fabric 1.0.x丸升,創(chuàng)建Channel時指定的Anchor Peer并不會生效(根本不會讀取Anchor Peer的配置)铆农,需要在channel 創(chuàng)建后更新Anchor Peer配置。
節(jié)點收到配置更新消息后狡耻,會更新Anchor Peer信息墩剖,其實就是嘗試和Anchor Peer建立通信,發(fā)送Membership request信息獲取對段網(wǎng)絡(luò)成員信息用于更新本地的網(wǎng)絡(luò)成員信息夷狰。
節(jié)點在發(fā)送Gossip消息時岭皂,會從本地網(wǎng)絡(luò)成員中隨機選取目的節(jié)點,根據(jù)Gossip消息的性質(zhì)沼头,譬如有些要求本組織爷绘,有些要求時本Channel等來發(fā)送,對于非本組織的消息进倍,則只發(fā)送到Anchor peer節(jié)點土至。
參考:
https://github.com/hyperledger/fabric/gossip