Myetherwallet

MyEtherWallet JSON RPC 介面速率限制?

  • August 25, 2017

由於最近 mainnet.infura.io 中斷,我決定將一些使用 infura 的程式碼切換到 myetherwallet JSON RPC 介面。在此期間,偶爾會出現以下錯誤。

Error: Invalid JSON RPC response: "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\n<HTML><HEAD><META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=iso-8859-1\">\n<TITLE>ERROR: The request could not be satisfied</TITLE>\n</HEAD><BODY>\n<H1>ERROR</H1>\n<H2>The request could not be satisfied.</H2>\n<HR noshade size=\"1px\">\nThe origin closed the connection.\n<BR clear=\"all\">\n<HR noshade size=\"1px\">\n<PRE>\nGenerated by cloudfront (CloudFront)\nRequest ID: GQeM8ZIaLpwEBaAjAgi5g3i2D2cnKfkdvJn6vBguj-UmSoT7GSxG-g==\n</PRE>\n<ADDRESS>\n</ADDRESS>\n</BODY></HTML>"
   at Object.InvalidResponse (/home/drone/projects/mew/asset-position-disposal/node_modules/web3/lib/web3/errors.js:38:16)
   at XMLHttpRequest.request.onreadystatechange (/home/drone/projects/mew/asset-position-disposal/node_modules/web3/lib/web3/httpprovider.js:115:32)
   at XMLHttpRequestEventTarget.dispatchEvent (/home/drone/projects/mew/asset-position-disposal/node_modules/xhr2/lib/xhr2.js:64:18)
   at XMLHttpRequest._setReadyState (/home/drone/projects/mew/asset-position-disposal/node_modules/xhr2/lib/xhr2.js:354:12)
   at XMLHttpRequest._onHttpResponseEnd (/home/drone/projects/mew/asset-position-disposal/node_modules/xhr2/lib/xhr2.js:509:12)
   at IncomingMessage.<anonymous> (/home/drone/projects/mew/asset-position-disposal/node_modules/xhr2/lib/xhr2.js:469:24)
   at emitNone (events.js:110:20)    
   at IncomingMessage.emit (events.js:207:7)                                
   at endReadableNT (_stream_readable.js:1047:12)                           
   at _combinedTickCallback (internal/process/next_tick.js:102:11)

這是什麼?myetherwallet 是否實施速率限制?

在撰寫本文時,MyEtherWallet 的速率限制為 400 個請求/分鐘(或大約 6 個請求/秒)。這是為了防止像我們以前看到的那樣的 DDOS,或者人們過度使用我們的節點並讓我們支付更大的費用。我們的目標是允許個人與乙太坊進行互動,而不是為您的所有願望提供超級強大的基礎設施。這對於一個人的使用應該綽綽有餘,但請隨時告訴我為什麼您需要更多,我們可以調整。

如果您打算使用它的平均請求數超過 400 個/分鐘,或者只是想確保正常執行時間,我們強烈建議您擁有自己的節點。

我們的後端基礎設施位於 AWS 上,並且通過 Docker + CloudFormation walkthrough thingy 開源,您實際上可以自己完成並通過以下說明執行您自己的公共或私有節點:https ://github.com/MyEtherWallet/docker-geth-磅

或者您可以支付少量費用並使用QuikNode,這會更容易。

對於這兩個選項,您可以通過右上角網路選擇器中的“添加自定義節點”選項連接到新節點。可以在此處找到有關如何連接到您自己的節點的更多詳細資訊。

引用自:https://ethereum.stackexchange.com/questions/24737