mirror of
https://gitlab.com/pulsechaincom/erigon-pulse.git
synced 2024-12-25 21:17:16 +00:00
e4f495fa44
* it compiles * after recent master * fix linters warnings * grpcV7 * go mod tidy * unmarshall adresses or adress * fix linters * after cr * after cr * after cr * after cr * fix tests * remove dev version * it compiles * mod tidy * fix bin deps * use stable version of grpc * switch back to master constructor * switch back to master constructor * add a bit docs * add a bit docs Co-authored-by: Alexey Akhunov <akhounov@gmail.com> Co-authored-by: alex.sharov <AskAlexSharov@gmail.com>
41 lines
1.3 KiB
Markdown
41 lines
1.3 KiB
Markdown
In turbo-geth RPC calls are extracted out of the main binary into a separate daemon.
|
|
This daemon can use both local or remote DBs. That means, that this RPC daemon
|
|
doesn't have to be running on the same machine as the main turbo-geth binary or
|
|
it can run from a snapshot of a database for read-only calls. [Docs](./cmd/rpcdaemon/Readme.md)
|
|
|
|
### Get started
|
|
**For local DB**
|
|
|
|
```
|
|
> make rpcdaemon
|
|
> ./build/bin/rpcdaemon --chaindata ~/Library/TurboGeth/tg/chaindata --http.api=eth,debug,net
|
|
```
|
|
**For remote DB**
|
|
|
|
Run turbo-geth in one terminal window
|
|
|
|
```
|
|
> ./build/bin/tg --private.api.addr=localhost:9090
|
|
```
|
|
|
|
Run RPC daemon
|
|
```
|
|
> ./build/bin/rpcdaemon --private.api.addr=localhost:9090
|
|
```
|
|
|
|
### Test
|
|
|
|
Try `eth_blockNumber` call. In another console/tab, use `curl` to make RPC call:
|
|
````
|
|
curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_blockNumber", "params": [], "id":1}' localhost:8545
|
|
````
|
|
It should return something like this (depending on how far your turbo-geth node has synced):
|
|
````
|
|
{"jsonrpc":"2.0","id":1,"result":823909}
|
|
````
|
|
|
|
### For Developers
|
|
|
|
**Code generation**: `go.mod` stores right version of generators, use `mage grpc` to install it and generate code.
|
|
|
|
`protoc` version not managed but recommended version is 3.*, [install instruction](https://grpc.io/docs/protoc-installation/) |