熊衍捷,高 鎮,李 根,楊晉生
(天津大學 a.微電子學院; b.電氣自動化與信息工程學院,天津 300072)
近年來,區塊鏈[1-2]技術不斷發展壯大,作為區塊鏈與云計算結合的產物——區塊鏈即服務,正改變著傳統的云計算服務模式[3],使區塊鏈技術成為一種觸手可及、開箱即用的工具服務于大眾。超級賬本[4](Fabric)是BaaS的核心模塊,提供基于聯盟鏈的身份認證、交易背書及區塊上鏈等功能。網絡節點peer負責維護賬本(Ledger),依據具體功能的不同,可分為提交節點(committer peer)和背書節點(endorser peer),Fabric從1.0版本開始采用了多通道(channel)的設計,盡管有利于增強用戶的隱私性和系統的擴展性,但是每一個peer均要處理來自不同通道的事務且保存一份相應的賬本,將對有限的計算資源帶來挑戰并增大磁盤空間的存儲壓力。改善BaaS的性能已經變得愈加迫切。
基于Kubernetes[5]的云計算平臺,才麗[6]提出了面向BaaS的Best-Balanced加權評分模型解決資源負載均衡問題,Best-Balanced算法從資源量負載平衡、資源量剩余量平衡和不同資源類型間負載平衡來衡量資源分配的平衡性。Medel等[7]通過基于Petri網的性能模型對Kubernetes容器的部署和終止開銷進行分析,提出合理的Pod下容器配額規則,最后實現一種考慮容器資源爭奪現象的調度算法。
基于多通道的設計,如果多個peer加入了同一通道并被調度至同一虛擬機,即使通道內的業務量不大,其任意時間點的負載均為每一個peer負載的總和,也可能造成虛擬機的負載過重,甚至發生單點故障,從而降低用戶服務質量。針對上述問題……