我租用了一个linux服务器,并希望能够访问dapp服务器上的ethereum节点。在服务器上托管整个节点似乎是不切实际的,因为它会占用那么多的空间。在不运行节点的情况下可以与区块链进行通信吗?我还没有找到对轻节点的大量支持。
如何在没有完整节点的情况下从块链中读取并写入块链?
发布于 2017-03-07 18:03:51
我认为您正在寻找的是一个web3提供者,您可以使用它来连接您的DAPP。
准确地说,每个人都不能运行自己的节点,有infura.io
在他们的平台上注册,他们将在您的邮件id上为您提供、mainnet和IPFS连接的端点。
您可以像使用自己的服务器一样使用它们。
确保你不会被这些要求压倒。
希望这能有所帮助。
谢谢。
发布于 2017-03-08 04:15:11
正如@Vixon所提到的,Infura是一种可能性,但是它在调用方面有一些限制,可以使用很多资源,比如获取过去的事件日志。
运行实验性light
模式的一个选项是运行您自己的节点,但是使用--fast
标志与Geth同步,该标志只存储块头和当前状态树,而不是所有块的完整内容。随后的块被添加到数据库中并存储在磁盘上,但是您可以每隔几个月删除它们一次并重新生成它们。
对于不足20 GB (SSD)的存储和2GB的内存(仍处于负担得起的linux VPSes的范围内),这似乎是可行的,尽管Geth似乎偶尔会掉下来,所以您需要一个systemd脚本或在它死后重新启动它。
发布于 2017-03-07 23:26:29
geth有一个实验性的--light
标志,它可以把它变成一个光节点。据我所知,它仍然是实验性的。
使用公共节点的写入访问应该可以工作,只要它有某种方式来中继事务,或者如果您可以使用sendRawTransaction (并使用您的密钥进行签名,您自己)。
https://ethereum.stackexchange.com/questions/12874
复制相似问题