You are viewing a single comment's thread from:
RE: Calibrae Day 2 Progress Report
Ok. My home PC doesn't have enough RAM really, so I may just have a go at running a witness node on your network on an VPN hourly basis for a little while, once you've simplified it a bit, and get it that way.
To run a witness, especially, on a brand new chain, would only require about 2gb of memory, even with a slow spinning disk, at least for backup. But if it was getting a block every minute you might find you want it to have an SSD, and the connection has to be super reliable.
I take a bit of a different angle on reliabilities of witness servers - so long as, I figure, there is 22 witnesses, it doesn't matter if half of them miss blocks a few times a day. I may look into it down the track to have the scheduling system account for this and deprioritise failing nodes automatically and slowly re-add their slots in the schedule.
There is no real issue if the witnesses are recalculating the schedule every few minutes, in reality, it's not that complex a process, I don't believe it impacts on block production. The way it works here, and with the culture, it makes the job very rigid. If 8 out of 10 blocks make it on, then the total capacity of the network is only reduced by 20%, and until it reaches over 3000tx per block do you start to see a ceiling on this. or so. I forget how fast it goes, but the network has never been saturated yet, at 95% or so uptime on nodes.
As a rule, nodes only have something like 6 seconds to prepare to make a block. The schedule is not mapped out very far ahead, for obvious reasons that this would make attacking by schedule, a specific node difficult.
I personally don't think the scheduling system is the optimal solution, at all, but it seems to work so far.
By the way, running a witness, you would not want to rent by the hour, as they have to be running every 3 seconds to grab new blocks. I can show you VPS services that will cost you under 10 euros a month and be ridiculously ample.
I meant for the purpose of getting the old chain data, and to learn about the current issues, not adding new blocks, but maybe you're not planning to run the old chain at all? I'm still some way from fully understanding how all these parts fit together too.
On my dev machine I have an SSD drive, but only 20GB of space on it currently, and only has 8GB RAM. I've tended to use VPS or cloud HPC when I've needed more, but I'd be pleased to see the cheap VPS options.
I've got some real-world work to do for a client, but I hope to get on your discord soon. I've never used that before either, so all this is a pretty steep learning curve for me! But I see that as part of the appeal of the opportunity. :)
oh, well, I say why not first make the legacy steemd build this way, and yes, I'll seed the chain snapshot and mention it in the README.md and people can then do their own configuration/forensics. These are probably, basically, first cabs of the rank, since getting this part done is probably one of the easiest and most important tasks.
Sure, I'll divvy out the juice on VPS when you pop into the chat...