比原Bapp紅包應用

喜迎國慶期間,比原鏈在自己的移動端錢包Bycoin(下載地址)和google插件錢byone中推出了紅包應用,在國慶期間深受大家好評。

front.png

那我們今天就來大概介紹一下比原紅包,以及基於比原鏈開發dapp應用的一些流程梳理。

我們知道絕大多數公有區塊鏈項目的TPS都只有幾十上百。所以像紅包這種及時到賬的應用在公鏈上實現還是有一定的技術難度,但是比原鏈卻在自己的側鏈上率先推出了紅包應用。比原側鏈的TPS有數十萬,整個紅包應用程序的併發量有將近2000。所以在國慶期間數萬人同時搶紅包都完全沒出現任何問題,這足以說明比原鏈側鏈性能優越,適合開發區塊鏈應用。下面我們來看一下整個紅包的實現過程。

下圖是整個紅包的架構圖:

redpackage.png

由於紅包是基於側鏈的應用,如果你是主鏈資產。要通過federation進行資產跨鏈,資產跨鏈到側鏈就可以使用紅包應用。整個紅包應用有四大模塊組成,第一個模塊是Blockcenter,你可以把看成一個與比原側鏈交互的中間件。第二個模塊就是智能合約,第三個模塊是整個紅包應用的服務端和存儲模塊使用的Mysql和Redis,最後一個模塊是前端應用,主要包括移動端的Bycoin和網頁端的Byone。

對整個紅包框架做一個大概的拆分以後,我們就能明白整個紅包應用的開發流程就是我們的Bapp開發流程。那我們首先從Bapp的前端來看,基於Google插件錢包的網頁應用和Bycoin上的應用都屬於Bapp的前端。這個模塊都是一些基本的功能,主要是收紅包,發紅包,以及紅包記錄等幾個頁面。

紅包的智能合約模塊使用了猜謎合約,這個模塊的實現需要參考合約的開發流程,將合約部署好以後的參數配置在後端服務器。爲什麼使用猜謎合約呢?其實發紅包的過程就是發起一個猜謎合約,紅包口令就是謎底,用戶領取紅包的時候,輸入的口令其實就是謎底,然後資產就可以自動轉移,就是領取紅包的這個過程。

下面我們來介紹一下Server模塊做的事情,整個Server是紅包的核心業務邏輯和數據處理模塊,數據存儲則是存放在Mysql和Redis中。同是Server也和Blockcenter相互調用(Blockcenter管理了BUTXO和一些主側鏈的接口封裝,可以看成中間件),和比原的側鏈進行交互。

通過我們對整個紅包應用的模塊拆分,我們就能很清楚看到,Bapp的開發是多個模塊組合,技術社區已經將一些標準的模塊進行封裝,做成中間件方便開發者調用。開發其他類似的Bapp應用就可以參考這個流程。

對紅包應用的基礎介紹就這些,如果你想了解詳細的過程,開發流程,以及某個模塊的具體實現,可以在開源庫中查看源碼,和相關接口文檔。如果有技術問題可以加微信:pymgdsb1314

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章