blockchain-java(簡(jiǎn)易區(qū)塊鏈項(xiàng)目)是基于Java實(shí)現(xiàn)的一個(gè)簡(jiǎn)易區(qū)塊鏈(聯(lián)盟鏈)項(xiàng)目,包括加密工具,錢包,P2P 傳輸,區(qū)塊同步,POW 共識(shí)等基礎(chǔ)實(shí)現(xiàn)。
使用方法
單節(jié)點(diǎn)部署
這個(gè)很簡(jiǎn)單, 直接像運(yùn)行普通的 SpringBoot 項(xiàng)目一樣運(yùn)行就好了,單節(jié)點(diǎn)默認(rèn)使用的 node1 節(jié)點(diǎn)的配置
多節(jié)點(diǎn)部署
項(xiàng)目默認(rèn)部署3個(gè)節(jié)點(diǎn),創(chuàng)建了3個(gè)配置文件 application-{env}.yml, 如果想要部署更多的節(jié)點(diǎn),再創(chuàng)建更多的配置文件就 OK 了。
使用 idea 部署測(cè)試非常簡(jiǎn)單,按照下面的方法添加多個(gè) springBoot 啟動(dòng)配置。
然后分別啟動(dòng) 3 個(gè)節(jié)點(diǎn)就好了。啟動(dòng)之后節(jié)點(diǎn)之間自動(dòng)連接成 P2P 網(wǎng)絡(luò),隨后你就可以使用 postman 工具進(jìn)行測(cè)試了,如果沒(méi)有安裝 postman 的話請(qǐng)自行安裝,或者和我一樣使用 chrome 瀏覽器的 postman 擴(kuò)展。
簡(jiǎn)單測(cè)試
首先依次啟動(dòng) node1 - node3 3個(gè)節(jié)點(diǎn),由于在啟動(dòng)的時(shí)候會(huì)自動(dòng)鏈接初始化的節(jié)點(diǎn),各自連接成為一個(gè) P2P 的網(wǎng)絡(luò),所以被鏈接的節(jié)點(diǎn)沒(méi)有啟動(dòng)的時(shí)候會(huì)拋出網(wǎng)絡(luò)異常,不用管它,等其他節(jié)點(diǎn)啟動(dòng)好了之后又會(huì)自動(dòng)連接上的。
你可以使用 PostMan 工具對(duì)上面的 RESTFUL api 進(jìn)行一一測(cè)試。不過(guò)從 v1.2 之后我在項(xiàng)目中集成了 swagger2,所以現(xiàn)在更好的測(cè)試是直接使用 swagger 的 api ui 頁(yè)面進(jìn)行測(cè)試: http://localhost:8081/swagger-ui.html
直接點(diǎn)擊相應(yīng)的 api 進(jìn)行測(cè)試就 OK 了。