目录
环境
想法
- 由于挖矿很费性能,对于手上的垃圾服务器来说,要挂nginx和tomcat还要挖矿实在是难为它了。
- 因此想把挖矿的任务分给另一台服务器。
- 目标效果即为:
- 副节点连上主节点,两者的数据同步。
- 主节点关闭挖矿,节省性能,由副节点挖矿。
开搞
让副节点连上主节点
- 注意:
- 不要在副节点上直接打开geth执行
- $ geth attach http://your_ip:8545
- 这样相当于远程连接控制主节点了,就像我们在windows上用ssh远程连接linux去控制geth挖矿的开启和关闭一样,链上仍然只有主节点一个,只不过有主节点本机和另一台机可以去控制主节点。
- 不要在副节点上直接打开geth执行
- 副节点需要和主节点用一样的创世块文件
- 这里就用和之前的文章(以太坊私链搭建)所用的创世块一致
- genesis.json
{
"config":{
"chainId":7,
"homesteadBlock":0,
"eip150Block":0,
"eip155Block":0,
"eip158Block":0,
"byzantiumBlock":0,
"constantinopleBlock":0,
"petersburgBlock":0,
"istanbulBlock":0,
"ethhash":{}
},
"alloc":{},
"coinbase":"0x0000000000000000000000000000000000000000",
"difficulty":"0x2",
"extraData":"",
"gasLimit":"0xffffffff",
"nonce":"0x0000000000000042",
"mixhash":"0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp":"0x00"
}
- 还要准备启动脚本,这里也保持和主节点一致
- rungeth.sh
geth --datadir ./data --networkid 7 --http --http.addr 0.0.0.0 --http.vhosts "*" --http.api "admin,debug,web3,eth,txpool,personal,ethash,miner,net" --http.corsdomain "*" --snapshot --mine --miner.threads 1 --allow-insecure-unlock console 2> 1.log
- 在副节点所在机新建一个用户
- $ geth --datadir ./data account new
- 然后在副节点所在机初始化创世块
- $ sudo geth --datadir ./data init ./genesis.json
- 启动geth
- $ sudo ./rungeth.sh
- 如果是在一台机子上搞两个节点,则要修改他们的运行端口,使之不要重复,不然其中一个会启动不起来。
- 至此,副节点就部署完成了,接下来要在主节点中添加副节点。
- 首先查看一下副节点的enode
- > admin.nodeInfo.enode
- 首先查看一下副节点的enode
- -
- 在主节点添加副节点的enode
- >admin.addPeer("encode")
- 在主节点添加副节点的enode
- 查看是否添加成功
- 方法1:
- 直接对比两者的块高度看看是否相等,如果块比较多,可能需要等待一下同步。
- > eth.blockNumber
- 方法2:
- net.peerCount
- admin.peers
- 方法1:
- 让副节点代替主节点挖矿
- 把主节点挖矿停掉,在主节点所在机执行:
- > miner.stop()
- 让副节点挖矿,在副节点所在机执行:
- > miner.start()
- 把主节点挖矿停掉,在主节点所在机执行:
修改java程序连接副节点
- 上一篇的文章:java使用web3j调用以太坊私链上的智能合约
- 上文中讲到,java程序连接单节点(主节点)的私链去调用智能合约。
- 注意:
- 如果不修改的话,此时主节点虽然开着geth,但关闭了挖矿,只能和副节点进行数据同步,而连接主节点发送的请求都是不能执行的。
- 而且主节点的geth不能关闭,否则副节点也会出问题。
- 不要在开着geth的时候直接关闭ssh窗口,否则会导致链的数据丢失,要在geth里执行> exit 退出。
- 复制副节点的用户私钥文件到java程序执行的机子上,
- 修改java程序使用这个私钥文件,并把用户地址也改成这个私钥文件的用户。
- 修改java程序连接副节点所在的服务器ip地址。
- 到这里就可以了,如此就实现了让副节点代替主节点挖矿的任务了。
存在的问题
- 主节点的账号是不能在连接副节点后使用的,也就是说,两个节点实际上只有链上的数据是互通的,账号是不互通的。因此java程序连接副节点时需要修改。
- 此时主节点只能同步数据,不能挖矿,连接到主节点后发送的交易并不会由副节点代替挖矿完成。
mexican pharmacy: buying prescription drugs in mexico online – buying prescription drugs in mexico online
medication from mexico pharmacy mexican pharmacy buying from online mexican pharmacy
https://foruspharma.com/# pharmacies in mexico that ship to usa
buying prescription drugs in mexico online: pharmacies in mexico that ship to usa – mexico drug stores pharmacies
canadian neighbor pharmacy: canadian drugstore online – canada drugstore pharmacy rx
canadian pharmacy checker safe canadian pharmacy canadian pharmacy king
This article really got me thinking about…백링크 업체
Your style is unique compared to other folks I have read stuff from. Thank you for posting when you’ve got the opportunity, Guess I will just bookmark this site.
https://canadapharmast.com/# canadian pharmacy online store
reputable mexican pharmacies online: mexico pharmacy – mexican rx online
mexico pharmacy: mexican pharmacy – medicine in mexico pharmacies
I absolutely love your website.. Pleasant colors & theme. Did you develop this website yourself? Please reply back as I’m wanting to create my own personal blog and want to find out where you got this from or just what the theme is called. Appreciate it.
Веном 3 2024 https://bit.ly/venom-3-venom-2024
top 10 online pharmacy in india reputable indian pharmacies indian pharmacies safe
Веном 3 онлайн https://bit.ly/venom-3-venom-2024
best online pharmacy india: world pharmacy india – online pharmacy india
mail order pharmacy india indianpharmacy com india pharmacy mail order
best canadian online pharmacy: pet meds without vet prescription canada – my canadian pharmacy rx
https://canadapharmast.online/# canadian pharmacy india
Веном 3 фильм https://bit.ly/venom-3-venom-2024
Веном 3 онлайн https://bit.ly/venom-3-venom-2024
mexican pharmacy: mexico drug stores pharmacies – mexican mail order pharmacies
mexican pharmaceuticals online: buying from online mexican pharmacy – best online pharmacies in mexico
http://foruspharma.com/# buying prescription drugs in mexico online
Hello there! This article couldn’t be written much better! Looking at this article reminds me of my previous roommate! He continually kept talking about this. I’ll forward this post to him. Fairly certain he will have a great read. Thanks for sharing!
canadian world pharmacy canadian world pharmacy canada drugs online reviews
п»їbest mexican online pharmacies: medication from mexico pharmacy – buying from online mexican pharmacy
canadian pharmacy 365 canadian pharmacy ratings canadian mail order pharmacy
I really love your site.. Excellent colors & theme. Did you create this website yourself? Please reply back as I’m hoping to create my own personal site and want to know where you got this from or exactly what the theme is named. Cheers.
This web site certainly has all the information and facts I needed concerning this subject and didn’t know who to ask.
https://indiapharmast.com/# mail order pharmacy india
india pharmacy: best india pharmacy – Online medicine order
I like it when individuals get together and share views. Great website, continue the good work!
canadianpharmacymeds com medication canadian pharmacy best canadian pharmacy to buy from
Online medicine order: pharmacy website india – online pharmacy india
Very good information. Lucky me I discovered your website by accident (stumbleupon). I have book marked it for later.
I need to to thank you for this fantastic read!! I absolutely enjoyed every bit of it. I’ve got you saved as a favorite to look at new stuff you post…
Wonderful post! We will be linking to this great article on our website. Keep up the great writing.
Good blog you’ve got here.. It’s hard to find quality writing like yours nowadays. I honestly appreciate people like you! Take care!!
Hello! I could have sworn I’ve been to this blog before but after browsing through some of the post I realized it’s new to me.Seo Paketi Skype: By_uMuT@KRaLBenim.Com -_- live:by_umut
Aw, this was an incredibly nice post. Taking a few minutes and actual effort to make a top notch article… but what can I say… I hesitate a lot and never seem to get anything done.
Everyone loves it when folks come together and share opinions. Great blog, keep it up!
It’s difficult to find educated people about this subject, however, you sound like you know what you’re talking about! Thanks
Howdy! I just wish to offer you a huge thumbs up for the great info you’ve got here on this post. I am returning to your website for more soon.
There is definately a lot to learn about this subject. I really like all of the points you’ve made.
Greetings! Very useful advice in this particular article! It’s the little changes that will make the most significant changes. Thanks a lot for sharing!
Your style is very unique in comparison to other people I’ve read stuff from. I appreciate you for posting when you’ve got the opportunity, Guess I’ll just book mark this site.
An outstanding share! I’ve just forwarded this onto a coworker who has been doing a little homework on this. And he in fact bought me breakfast due to the fact that I discovered it for him… lol. So let me reword this…. Thank YOU for the meal!! But yeah, thanx for spending time to talk about this topic here on your web site.
Having read this I thought it was very enlightening. I appreciate you finding the time and effort to put this short article together. I once again find myself personally spending a lot of time both reading and commenting. But so what, it was still worthwhile!
This website was… how do you say it? Relevant!! Finally I’ve found something which helped me. Many thanks!