sounds like you're looking for a variety of HA / distributed architecture features. this would likely be difficult to pull off with bitcoind or any other existing full-node implementation.
this would surely be useful at some later date but doesn't seem that useful atm.
Hey, i was just wondering. Is anybody working on a cluster Bitcoin client yet ?
And by "cluster Bitcoin client" I mean:
- Works using networked sub-clients, each doing only part of the work (transaction signing / relaying / storing blockchain).
- Can be run on multiple machines utilizing all their processors and internet connections
- Can use multiple Internet connections at once
- Can be run on clusters, supercomputers, beowulfs, server farms etc.
Or maybe perhaps it has already been written, but I didn't notice it ?
passing all the structures in question over the network versus doing it all locally / in memory on a single machine could work. however, this will add a lot of latency and likely slow down the operations in question, e.g. fetching tx blocks from the db will take longer, inserting into a remote db will have more latency, individual tx lookups for signature verification will take longer.
btcd can utilize pretty much all the cpu it has on hand, i have seen up to 7 of 8 cores being sucked up for tx signature verification. using multiple network uplinks is more a matter of configuring your network properly than anything that a distributed full-node solution could be expected to do.