Cointime

扫码下载App
iOS & Android

你应该运行你自己的以太坊节点吗?

TLDR:在大多数情况下,你不应该托管你的以太坊节点,但这也要视情况而定。

最近,我有机会在以太坊网络中重构一个有点大的 Dapp,我开始忙于解决继续托管节点的问题,或者只是使用 KISS 架构(保持简单,愚蠢)和只需使用可信方服务即可。

目录

  1. 为什么你需要一个以太坊节点?
  2. 托管你的以太坊节点的优势
  3. 使用受托方以太坊服务的优势
  4. 价格比较

1. 为什么你需要一个以太坊节点?

如果你是一个dapp开发者,你可能需要一些链外基础设施,以运行cronjob任务或自动管理私钥,等等。

以编程方式与以太坊网络互动的唯一最佳方式是使用Geth给你的API,它允许你将你的链外逻辑与签署交易的逻辑以及网络同步和通信的方式分开。

2. 托管你的以太坊节点的优势

托管你的节点,给你更多:

  • 隐私:你没有分享对受信任方节点的访问。
  • 可用性:无论一个第三方有多么值得信任,总会有一些停机时间,即使只有几秒钟或几分钟,你必须在你的代码中加入一些重试逻辑来处理这些。
  • 灵活性:你可以在你的 Geth 节点内托管私钥(不推荐这样做!)并立即跳过所有的签名交易。

在我看来,这是3个最重要的优势,但如果你决定走这条路,肯定还会发现其它的优势。

3. 使用可信方以太坊服务的优势

这里要考虑的第一件事是决定你应该选择哪个供应商,有一大堆供应商,随着时间的推移,会出现更多的供应商。

我能想到的顶级供应商是Infura、Alchemy,以及最近的Etherscan。

我为我所做的项目选择了Etherscan,因为除了通常的Geth端点之外,他们还有额外的端点,其次,我已经在使用他们的网站来追踪项目的钱包和合约,所以直接使用他们的API也是非常有意义的。

使用受托方服务的一些优势是:

  • 心态:你不必担心升级节点,总是不断查看每个版本的补丁说明很烦人。
  • 睡眠时间:每次节点发生故障时,你的工作不是去排除故障并尽快修复,由于这些受信任的各方已经有大量的运行节点的经验,他们可能根本不会在发生故障时惊慌。
  • 成本优化:对于大多数应用程序,你不会每分钟进行大量的交易,这使你几乎可以无限期地运行在他们的免费层(下面有更多细节)。
  • 2层:当你要转移到第二层甚至另一个网络如Binance智能链时,你所要做的就是改变基本的API端点,因为接口几乎是相同的,基本就像在以太坊链上一样。

使用受托方的一个主要缺点是,你将缺少让Geth管理你的私钥和交易签名的功能,所以你在开发与区块链的集成时需要考虑这一点。

4. 价格比较

自我托管和受托方之间的成本比较。

只是要多说几句,我们的eth合约有定义明确的事件,这使得抓取网络更加容易。

我所要做的就是用我们的合约地址调用eth_getLogs端点,它最多可以返回1000个事件,我想要多少块就有多少块。

我做了一些计算,在最极端的情况下,我们每次调用只能抓取25个区块,这将给我们带来每区块约40个事件,这对我们的使用来说是绰绰有余。

我们在AWS中运行节点的成本如下:

  • 当前网络大小约为 1TB,这相当于附加到我们正在运行的实例的 EFS 每月约 300 美元
  • 我们为 Geth 节点运行了一个非常大材小用的实例,每月花费我们大约 200 美元(因为我们还在那里与 Geth 并排运行一些服务)
  • 我没有计算实例的出口流量

在迁移到Etherscan API后,我们完全删除了EFS存储,并将实例降级为1/4,最终每月节省了约450美元的AWS账单。

在新的Etherscan API中,我们能够无限期地使用免费层,因为我们有这样的优化请求。

简而言之,每个案例都是不同的。但是,在任何项目的最初阶段,使用一个值得信赖的第三方总是有利的,以后你可以重新考虑升级到一个自我托管的节点。

评论

所有评论

推荐阅读

  • BTC突破82000美元

    行情显示,BTC突破82000美元,现报82033.16美元,24小时涨幅达到0.37%,行情波动较大,请做好风险控制。

  • ETH突破2400美元

    行情显示,ETH突破2400美元,现报2400.26美元,24小时跌幅达到0.95%,行情波动较大,请做好风险控制。

  • 比特币现货ETF过去一周净流出2.28亿美元 月初至今达6.18亿

    10月18日,据Bitcoin Archive报道,比特币现货ETF过去一周净流出2.28亿美元;月初至今(month-to-date)净流出已达6.18亿美元。该账号以「Uptober 还能救回来吗」发问,借市场对10月传统上涨行情的预期,点出近期ETF资金流出的反差。

  • 前Mt. Gox CEO批评Ledger处置植入物事件 称其早在3月已知晓威胁

    10月18日,据Bitcoin News消息,前Mt. Gox首席执行官Mark Karpelès公开批评Ledger对硬件钱包供应链植入物攻击的处置。Karpelès称,Ledger早在2026年3月就已知晓该类威胁,却未向客户充分警示;他表示,出现可量产、自对齐式植入物的证据本应触发最高级别的安全响应,而不是把警告埋在Ledger Academy的一篇文章中。他还批评Ledger持续淡化事件,并质疑其与受影响客户的沟通。针对Ledger首席执行官Pascal Gauthier在回应中提及其Mt. Gox历史,Karpelès回击称:「我曾相信你们会吸取我的失败教训,做得比我更好。」

  • 霍尔木兹海峡7天报告12起船舶遇袭事件,专家称实际情况或更严重

    据伊朗劳工通讯社(ILNA)报道,根据英国海上贸易行动办公室的数据,过去7天内,约有12起船舶或油轮遭袭或被锁定为目标的事件。在此期间,约有254艘船舶通过霍尔木兹海峡,平均每天约36艘。该机构还报告称,累计记录了84起相关事件,其中74起涉及抛射物袭击。约四分之三的袭击发生在海峡南部航道。但实际发生的事件数量可能高于已公布的数据。约旦军事与战略专家、上校纳达尔·阿布扎伊德认为,部分船舶不愿报告受损情况,可能有两个原因:一是出于经济考虑,尤其是保险及相关成本;二是出于安全和军事方面的考量,以避免暴露油轮使用的航线。阿布扎伊德表示,公布船舶航行路线等信息,可能使外界更容易识别其航行规律,并增加这些船舶未来遭到袭击的风险。(金十)

  • 伊朗武装部队开火拦截霍尔木兹海峡“违规”通行船只

    10月18日,自伊朗方面获悉,当地时间17日18时15分,伊朗武装部队从锡里克地区附近向霍尔木兹海峡试图“违规”通行的船只开火,并将其拦截。(央视新闻)

  • 也门外长谴责伊朗借“调解”之名干涉也门

    据沙特媒体哈达斯(Alhadath)报道,也门外长表示,我们谴责伊朗外长阿拉格齐关于德黑兰所谓“在也门的调解”的言论。有关言论无法掩盖伊朗政权支持胡塞叛乱的责任。伊朗政权通过向胡塞武装提供武器、导弹和无人机,延长了战争,并使自己成为与也门人民作斗争的一方。伊朗应首先停止对也门的干涉和武装,而不是提出调解。同时,伊朗政府应尊重各国主权,遵守国际法和良好邻里原则。伊朗官员关于“调解”的言论对数十万伊朗武器受害者的家庭是一种挑衅。沙特阿拉伯一直是也门国家和人民的支持者,提供了经济、救援和发展方面的支持。胡塞武装拒绝了沙特方面提出的路线图,该方案旨在推动也门重返政治进程。伊朗试图将也门作为谈判筹码 。伊朗政府与政变民兵组织打交道,并不赋予其合法性,也不意味着该组织有权代表也门。

  • ETH跌破2400美元

    行情显示,ETH跌破2400美元,现报2399.44美元,24小时跌幅达到1.36%,行情波动较大,请做好风险控制。

  • 泽连斯基:乌能源设施遭俄军大规模袭击

    10月17日,据央视,当地时间17日,乌克兰总统泽连斯基表示,俄军对乌能源基础设施发动大规模袭击,12小时内动用超过320架“见证者”无人机及巡飞弹、巡航导弹和弹道导弹,造成乌全国超15处重要发电及输电设施受损。泽连斯基称,俄方试图在冬季来临前破坏乌能源供应,造成大范围停电。尽管乌军拦截了相当一部分来袭目标,但袭击规模大、持续时间长,能源设施受损严重。目前抢修工作仍在进行。

  • 过去24小时全网爆仓2.22亿美元,主爆多单

    10月17日,据CoinGlass数据,过去24小时加密货币市场总爆仓金额2.22亿美元。其中多单爆仓1.60亿美元,空单爆仓6143.83万美元,多单占比72.3%,共有71,183人被爆仓。分币种看,BTC爆仓约4352.24万美元,ETH约3632.22万美元,SOL约918.86万美元。Binance爆仓占比最高,为47.7%;最大单笔爆仓发生在Hyperliquid的BTC-USD交易对,价值509.66万美元,为多单,爆仓价81,122.00美元。