I am renting a linux server and would like to have access to an ethereum node on the server for a dapp. It seems impractical to host an entire node on the server as it would take up so much space. Is it possible to communicate with the blockchain without running a node? I haven't been able to find much support for light nodes.

How can I read from and write to the blockchain without having a full node?

  • @Richard Horrocks do these apis allow writing to the block chain?
    – Joe
    Mar 7, 2017 at 16:57
  • The linked question only wants to read from the blockchain, not write to it
    – Joe
    Mar 8, 2017 at 9:46
  • Infura allows writing to the chain, afaik.
    – q9f
    Mar 8, 2017 at 12:37

3 Answers 3


I think what you're looking is that a web3 provider, which you can use it to connect your DAPP.

Exactly, that everyone can't run their own node, there is infura.io

Sign-up on their platform, they shall provide you the end-points for connecting on Ethereum testnet, mainnet & IPFS on your mail-id.

You can use them as if you are having your own server.

Just make sure that you're not overwhelming with the requests.

Hope this helps.



As @Vixon mentions Infura is a possibility, but it has some limitations on calls that can use a lot of resources like fetching past event logs.

One option short of running the experimental light mode is to run your own node, but sync up with Geth using the --fast flag, which only stores block headers and the current state tree rather than the complete contents of all the blocks. Subsequent blocks get added to the database and stored on disk, but you can delete them every couple of months and resync.

This seems to be workable with under 20 GB of (SSD) storage, and 2 GB of memory, which is still in the realm of affordable linux VPSes, although Geth seems to fall over occasionally, so you need a systemd script or something restarting it when it dies.

  • Could you explain the limitations of Infura in a bit more detail please
    – Joe
    Mar 8, 2017 at 9:48
  • Using the --fast flag is useful then deploy a contract there, or to do so I would need the full node update? Dec 16, 2017 at 8:18
  • 1
    @MoisésBriseñoEstrello --fast should be fine to deploy a contract. Dec 17, 2017 at 10:41

geth has an experimental --light flag, which would turn it into a light node. As far as I am aware, it's still experimental.

Write access using a public node should work as long as it either has some way of relaying a transaction, or if you can somehow use sendRawTransaction (and sign with your keys, yourself).

Not the answer you're looking for? Browse other questions tagged or ask your own question.