私有以太坊区块链的数据在几天后丢失/消失

我正在Azure上的虚拟机上部署私有以太坊区块链(geth).在区块链上部署我的Solidity合同并启动我的NodeJS应用程序后,我能够通过nodejs Loopback App的web apis正常添加数据,一切正常,我可以使用GET apis查看添加的数据.

然而,在1-2-3天后(随机)我无法检索通过我的GET apis添加的数据,而我仍然可以添加新数据,确认Geth正常运行并且没有中断.

我运行geth使用:

geth --datadir ./myDataDir --rpc --networkid 1441 console 2>> myEth.log

myEth.log没有显示任何错误,nodejs日志也是干净的.

eth.syncing显示false,表示网络已同步.

myDataDir文件夹的大小仍然在增加,因此逻辑上数据应该在某处,但它没有显示.

这不是私人区块链!

--networkid 1441

这只表示您与运行ID为1441的网络的客户端进行通信.可能不太可能,但如果其他人运行ID为1441的网络,则此节点将很好地连接到您的节点.如果具有相同ID的另一个网络具有更长(更“重”)的链,则会覆盖您的本地链.

要避免这种情况,请尝试使用更随机的网络ID(可能是7到9位数),并禁用发现功能

--nodiscovery

或者只使用–dev预设.

相关文章
相关标签/搜索