日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java中的socket算法_GitHub - xiaohuiduan/pbft: pbft算法基于Socket的java实现

發(fā)布時間:2025/3/19 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java中的socket算法_GitHub - xiaohuiduan/pbft: pbft算法基于Socket的java实现 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

關(guān)于代碼介紹方法,可以去看我的博客。里面介紹了一些功能的實(shí)現(xiàn)思路和方法,以及使用到的一些庫的介紹。

使用方法

打包

首先在maven中更改jar包生成位置

然后使用命令生成jar包

mvn package

運(yùn)行方法

在IDEA運(yùn)行著將第二塊區(qū)域進(jìn)行注釋(第一塊區(qū)域不要注釋),使用jar包運(yùn)行則將第一塊區(qū)域進(jìn)行注釋(第二塊區(qū)域不要注釋)

包運(yùn)行方法

java -jar 包名 ip地址 端口號 序號 文件保存位置

ip地址和端口號代表節(jié)點(diǎn)作為server需要占用ip和端口號

序號:節(jié)點(diǎn)的序號,必須獨(dú)一無二

文件保存位置

例如:

java -jar oldpbft-jar-with-dependencies.jar 127.0.0.1 8080 0 C:\\Users\\XiaoHui\\Desktop\\data\\

因此,你可以在本機(jī)上運(yùn)行多個節(jié)點(diǎn)(保證端口號和序號不同即可)。

在IDEA中運(yùn)行的方法

首先配置啟動,允許多個main執(zhí)行

然后,每次啟動一個節(jié)點(diǎn),更改 i 就可以啟動不同的節(jié)點(diǎn)。

int i = 0;

String ip = "127.0.0.1";

int port = 8080 + i;

StartConfig.basePath = "C:\\Users\\XiaoHui\\Desktop\\data\\";

int index = i;

注意點(diǎn)

程序會自動新建一個json文件,里面保存節(jié)點(diǎn)的ip信息,StartConfig.basePath代表json文件保存位置。

如果結(jié)束所有節(jié)點(diǎn),然后重新啟動程序,需要將ip.json中的內(nèi)容全部刪除。(比如說你啟動了1節(jié)點(diǎn),2節(jié)點(diǎn),然后你關(guān)閉了這個程序,又想重新啟動1節(jié)點(diǎn)2節(jié)點(diǎn)就必須刪除),否則會報錯,如下圖所示:

只有主節(jié)點(diǎn)能夠發(fā)送消息,其他節(jié)點(diǎn)會發(fā)送消息失敗。如何想使用非主節(jié)點(diǎn)發(fā)送消息,可以去修改代碼。如下圖所示:將紅框內(nèi)的代碼注釋即可。

完成功能

實(shí)際上代碼完成的功能很少很少,就是完成了PBFT中的節(jié)點(diǎn)加入功能,然后還有消息發(fā)送PBFT認(rèn)證功能,以及交易數(shù)據(jù)保存的功能****。其他的就emm沒有做。本人對區(qū)塊鏈也不是特別的了解,所以有些功能感覺實(shí)現(xiàn)起來的代碼怪怪的。

這個倉庫代碼大概率不會進(jìn)行更新了,因為emmmmmm,考研去了。

考研結(jié)束,重新更新一波。

總結(jié)

以上是生活随笔為你收集整理的java中的socket算法_GitHub - xiaohuiduan/pbft: pbft算法基于Socket的java实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。