Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: gweedo on February 07, 2014, 06:04:12 PM



Title: Can someone explain the reason the core dev team is splitting rpc and bitcoind?
Post by: gweedo on February 07, 2014, 06:04:12 PM
https://github.com/bitcoin/bitcoin/commit/0ad474ee276cd1bfa4e7064d5e9d099844bca207#diff-ef76fd6674f07db88c3422fdbf0bcf9fR55

I don't understand the benefit of removing the rpc from the bitcoind? Wouldn't that make the bitcoind require another bitcoin-qt instance to control? What is the reason? Is this just for more of a move to border router type functional?


Title: Re: Can someone explain the reason the core dev team is splitting rpc and bitcoind?
Post by: DannyM on February 09, 2014, 03:34:06 AM
Wouldn't that make the bitcoind require another bitcoin-qt instance to control?

You can control it with the "bitcoin-cli" program that is also built alongside bitcoind. It is a bitcoin json-rpc client.


Title: Re: Can someone explain the reason the core dev team is splitting rpc and bitcoind?
Post by: maaku on February 09, 2014, 03:41:07 AM
When you call "bitcoind <command>", it's actually using JSON-RPC to communicate with the already running bitcoind instance. This just separates the commands "bitcoind" (to launch the daemon) and "bitcoin-cli" (to interact with it over JSON-RPC). Because the old way of doing things was confusing, as you just demonstrated.


Title: Re: Can someone explain the reason the core dev team is splitting rpc and bitcoind?
Post by: dserrano5 on February 09, 2014, 04:21:26 PM
Ok so it is just basically an reorganization of program to make it easier to follow.

And removing stuff that doesn't belong in a server.


Title: Re: Can someone explain the reason the core dev team is splitting rpc and bitcoind?
Post by: NanoAkron on February 09, 2014, 10:52:38 PM
Ok so it is just basically an reorganization of program to make it easier to follow.

And removing stuff that doesn't belong in a server.

Do you know whether the new 'streamlined' version of bitcoind will be able to run a node on embedded systems such as the Raspberry Pi?


Title: Re: Can someone explain the reason the core dev team is splitting rpc and bitcoind?
Post by: DeathAndTaxes on February 09, 2014, 11:00:36 PM
Ok so it is just basically an reorganization of program to make it easier to follow.

And removing stuff that doesn't belong in a server.

More this.

If you think of Bitcoind as the "bitcoin server" then the bitcoin server today has both the server and a client bundled together not as two seperate apps but as one app.  Calling bitcoind causes  an instance to run as a "server" calling bitcoind <command> has the same executable run as a client.

There is no reason for a sample client representation to be included in the server.