區塊鏈中介軟體WeBASE v1.3.0釋出

買賣虛擬貨幣
WeBASE是一個友好、功能豐富的區塊鏈中介軟體平臺,透過一系列通用功能元件和實用工具,助力社羣開發者快速搭建區塊鏈應用的基礎環境,並可透過視覺化平臺進行合約快速開發、實時管理區塊鏈節點的狀態。上一個版本釋出之後,新增的鏈上事件通知功能,使得開發者可在區塊鏈應用層上,透過WeBASE-Front訂閱鏈上事件,實現了鏈上事件的主動推送。團隊對於架構與效能的打磨不止於此,為了提升鏈上事件通知功能的完備性、私鑰託管的安全性,以及交易上鍊的效能,我們認真聽取社羣開發者的使用反饋,在WeBASE v1.3.0中對上述問題進行了系列最佳化,一些已知的問題我們也進行了修復。目前,WeBASE v1.3.0已經發布。本文帶大家概括性地認識本次更新的關鍵特性,歡迎大家積極體驗新版本,並將開發心得和建議反饋給我們。私鑰管理最佳化WeBASE v1.3.0 在一鍵部署指令碼中新增了WeBASE-Sign元件,提供私鑰管理和簽名服務,用於管理鏈上使用者的私鑰。

在過去的版本中,為了便於開發者快速體驗WeBASE的功能,私鑰管理預設透過WeBASE-Node-Manager來管理,也可以透過配置,使用WeBASE-Sign來管理,WeBASE-Sign是可選的服務。然而,兩種方式並存,容易混淆。為了更簡便地操作並提高安全性,本次更新,我們將WeBASE-Sign最佳化為一鍵部署指令碼中的必選服務,交易流程如下:

同時,WeBASE-Sign新增國密演算法的支援,呼叫端可傳入演算法型別,簽名介面根據型別動態選擇ECDSA或國密SM2演算法。

效能最佳化

交易上鍊過程中,簽名演算法的實現會影響交易簽名效率,而Web伺服器的配置對後臺服務的併發效能也會產生直接影響,因此,我們對交易鏈路WeBASE-Front、WeBASE-Sign進行了一系列最佳化,使交易上鍊的效能有顯著提升。

最佳化點包括:最佳化國密簽名演算法的實現;最佳化tomcat連線池;最佳化JVM引數配置;最佳化長連線。最佳化長連線的做法,主要是採用HTTP1.1長連線,HTTP頭啟用Keepalive,複用TCP、最佳化資料庫連線池配置、對私鑰和簽名部分做了快取等。

鏈上事件通知最佳化

WeBASE-Front在上一版本中,支援了訂閱鏈上事件通知的功能,本次更新針對事件通知模組的功能進行完善,新增取消訂閱出塊事件和合約Event事件介面,新增檢視已訂閱的出塊事件和合約Event事件的介面,以方便開發者更有效地管理與訂閱鏈上事件通知。

同時,我們也對事件通知模組中已知的bug進行了修復,確保事件通知功能的穩定性。具體的介面說明可檢視文末WeBASE介面文件。

同時,我們新增了WeBASE-Event-Client專案,開發者可透過此專案體驗、測試鏈上事件通知,或參考此專案的實現,將自身的區塊鏈應用連線MQ Server,接收訊息推送來獲取鏈上事件通知。

專案地址:
https://github.com/WeBankFinTech/WeBASE-Event-Client

附:鏈上事件通知說明

在需要實時獲取鏈上事件的業務場景中,應用層無法與連線節點的WeBASE直接建立長連線,難以實時獲取鏈上的訊息。為了解決這個問題,應用層可透過WeBASE-Front訂閱鏈上事件,當事件觸發,可透過訊息佇列RabbitMQ通知到應用層。架構如下:

透過安裝RabbitMQ並配置WeBASE-Front的SpringBoot-AMQP屬性引數,即可將鏈上事件通知訊息推送到訊息佇列中。

詳情可參考鏈上事件通知的說明文件:
https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Front/appendix.html#id11

免責聲明:

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

推荐阅读

;