Does a rolling node have the information required to serve RPC queries without relying on other, full nodes? I am not interested past balances or contract states, but I do want to query the current state of the chain. Smart contract storages, for example. Is a rolling node capable of this, or would it have to forward the RPC request to a full node instead? I want to make the queries fast and I want to make a lot of them so it is important to me that the node can do it without spamming the network and making it slow.
1 Answer
A rolling node works perfect for your situation. A rolling node has the state of the chain going back 5 cycles (by default; is adjustable).
or would it have to forward the RPC request
Nodes do not forward RPC requests to other nodes. If your node can't answer the RPC, you'll get an error. RPCs are standard HTTP requests so you might get 404s if the RPC has no data.
Also, don't use the tezos-client
to execute RPCs (painfully slow). Use any standard http library from your tool's language.