譯文出自:登鏈翻譯計劃
譯者:Tiny熊
部署到以太坊主網你需要知道的一切
我們都喜歡以太坊,所以你已經創建了一些出色的智能合約。它們通過單元測試和測試網進行了密集的測試。現在終于到了上主網的時候了。但這是一個棘手的事情...
1.究竟什么是部署交易?
首先讓我們從低層次快速討論一下什么是合約部署。任何以太坊交易本身只由幾個屬性組成,一般有三種交易類型:
發送以太幣
部署智能合約
調用智能合約
這所有三個交易的某些部分對總是相同的:from,value,gas,gasPrice和nonce。它們之間的區別來自于to和data參數,這兩個參數代表了交易被發送到哪里,以及與之一起發送的數據是什么。
發出以太幣交易to:ETH的接收地址
data:空(這里不涉及智能合約)
部署智能合約
to:空
data:智能合約的字節碼。
與智能合約的交互
to:智能合約地址
data:函數選擇器及函數參數數據
2.部署前的考慮因素
你肯定明白智能合約的安全是極其重要的。雖然從一開始就應該遵循最佳實踐-,但在部署到主網之前進行審計是最后也是關鍵的一步。你可以使用https://www
);};
加密貨幣指數協議Index Coop計劃推出以太坊質押代幣指數代幣dsETH:9月17日消息,加密貨幣指數協議Index Coop產品團隊在社區發布提案,建議推出以太坊質押代幣指數代幣dsETH,讓用戶降低選擇成本。dsETH將由44.1%的rETH、29.6%的stETH以及26.3%的sETH2組成,并將基于Balancer發行。[2022/9/17 7:02:29]
這里你可以看到一個典型的遷移腳本,它利用了async/await語法。在部署之后,我們將所有權轉移到一個已經部署好的multisig合約上。
將Truffle用于主網的弊端
部署備忘錄
值得一提的是,由于幾個原因,Truffle本身遠不是部署到主網的最佳選擇。
部署的特殊遷移合約增加了Gas成本。盡管可以刪除它。
在主網上,Truffle中的長時間遷移是非常非常痛苦的。
Gas交易成本使主網的部署變得非常困難,你可以在Truffle配置中設置一個Gas價格,但在整個遷移期間都將使用這一個Gas價格。因此,如果Gas價格在你的部署期間大量增加,什么時候被礦工納入區塊,就只能祝你好運。如果一個交易在幾分鐘內沒有被打包,Truffle將直接停止你的部署。你唯一的選擇是設置一個非常高的Gas價格,并希望一切都能快速部署。
你的網絡連接可能會導致問題,你最好不要在長時間的部署中失去連接,否則就準備從頭再來。
至少,Truffle現在在實際部署前會進行運行模擬部署。你可以用--skip-dry-run跳過測試網的模擬,但不要在主網上這樣做。這將確保你至少不會在中間環節出現錯誤,而不得不從頭開始重新啟動。
V神:將長期提升以太坊區塊容量至16MB,將支持Rollup達到8萬TPS:5月20日消息,以太坊創始Vitalik Buterin在2022年5月20日舉行的ETH Shanghai會議上表示,以太坊團隊已經提出名為Danksharding的擴容計劃,長期將把以太坊的區塊容量擴充至8萬TPS,最終Rollup將能夠達到8萬TPS/秒。首先將完成Proto-danksharding,支持1MB的區塊容量和5000的TPS。[2022/5/20 3:29:44]
總而言之,如果你有錢支付使用Truffle所增加的費用,就去使用它吧。否則,請繼續閱讀替代方案。
b
main()
);
該腳本可以用以下方式調用。
$npxhardhatrunscripts/deploy.ts
另外,你可以使用hardhat-deploy插件,它增加了完成部署后保存在文件的能力。
d.Web3
當然,你總是可以直接使用Web3(或ethers.js)構建你的自定義部署邏輯。當你頻繁地部署合約并需要自定義邏輯來存儲部署信息時,這非常有用。Web3直接支持使用myContract.deploy()進行部署。
constmyContract=newweb3.eth.Contract(jsonABI)myContract.deploy({data:'0x12345...',//bytecodearguments://constructorarguments}).send({from:'0x1234567890123456789012345678901234567891',gas:1500000,gasPrice:'30000000000000'}
以太坊擴容方案 SKALE V2 現已上線:金色財經消息,以太坊擴容方案 SKALE Network 宣布其 V2 鏈現已上線,并將很快發布 dapps 和 hubs 的上線計劃。[2022/4/24 14:45:02]
e.TruffleTeam
還記得上面提到的用Truffle部署到主網的問題嗎?那么有一個解決方案,叫做TruffleTeams。它對開源項目是免費的,否則每個月會花費幾美元。但是,通過TruffleTeam你就可以得到一個項目儀表板。這是與Github的直接連接,并作為持續集成運行你的測試。任何成功的構建都可以從儀表板上部署。
這允許你為部署連接MetaMask,意味著完全控制交易成本并加速。
TruffleTeamsDeployments
TruffleTeams部署的完整文檔,請參閱這里。
4.部署后的考慮因素
在部署到主網之后,你應該在Etherscan和Sourcify上驗證合約的源代碼。這涉及到將Solidity代碼提交給這些服務,這些服務將對其進行編譯,并驗證它是否與部署的字節碼相匹配。驗證成功后,用戶可以在Etherscan上獲得更多的信息,可以直接在Etherscan上與之交互,或者在Remix等支持工具從Sourcify上獲取代碼。
你可以在Etherscan網站上手動驗證你的合約。另外,也推薦使用Truffle、Hardhat插件和直接使用EtherscanAPI自動驗證的插件。
以太坊2.0質押地址余額超過400萬枚:據歐科云鏈OKLink數據,當前以太坊2.0存款合約地址已收到4000162.0 ETH,質押量超過400萬枚。[2021/4/28 21:05:19]
關于如何使用Sourcify,請查看這篇博文。
本翻譯由CellNetwork贊助支持。
來源:https://soliditydeveloper.com/deployments
參考資料
登鏈翻譯計劃:https://github.com/lbc-team/Pioneer
Tiny熊:https://learnblockchain.cn/people/15
函數選擇器:https://learnblockchain.cn/docs/solidity/abi-spec.html#function-selector
最佳實踐:https://consensys.github.io/smart-contract-best-practices/
中譯文:https://learnblockchain.cn/article/1890
訪問控制:https://docs.openzeppelin.com/contracts/4.x/access-control
GnosisSafe:https://gnosis-safe.io/
編譯:https://ethereum.org/en/developers/docs/smart-contracts/compiling/
Tether在以太坊鏈上新增發1.2億USDT:據Whale Alert數據顯示,北京時間08月21日16:48,Tether在以太坊鏈上新增發1.2億USDT,交易哈希為:0xa4f2bc2dcc73e57370ae170a06e93de265b79a2e658b381e13f30c0875c14fdf。[2020/8/21]
Infura:http://infura.io/
QuikNode:https://www.quiknode.io/
Alchemy:https://alchemy.com/?r=7d60e34c-b30a-4ffa-89d4-3c4efea4e14b
運行你自己的節點:https://ethereum.org/en/developers/docs/nodes-and-clients/run-a-node/
遷移功能:https://learnblockchain.cn/docs/truffle/getting-started/running-migrations.html
truffle配置:https://learnblockchain.cn/docs/truffle/reference/configuration.html
hdwallet-provider:https://github.com/trufflesuite/truffle/tree/master/packages/hdwallet-provider#readme
Trezor:https://github.com/daonomic/trezor-web3-provider
Ledger:https://github.com/petertulala/truffle-ledger-provider
這里:https://learnblockchain.cn/docs/truffle/getting-started/running-migrations.html
設置一個Gas價格:https://learnblockchain.cn/docs/truffle/reference/configuration.html#networks
truffle-flattener:https://github.com/nomiclabs/truffle-flattener
內置扁平化命令:https://hardhat.org/getting-started/#running-tasks
加速或取消:https://metamask.zendesk.com/hc/en-us/articles/360015489251-How-to-Speed-Up-or-Cancel-a-Pending-Transaction
solidity-template:https://github.com/paulrberg/solidity-template
hardhat-deploy:https://github.com/wighawag/hardhat-deploy#deploy-scripts
myContract.deploy():https://learnblockchain.cn/docs/web3.js/web3-eth-contract.html#deploy
TruffleTeams:https://www.trufflesuite.com/teams
花費幾美元:https://www.trufflesuite.com/teams#pricing
這里:https://www.trufflesuite.com/docs/teams/deployments/creating-a-deployment
Etherscan:https://etherscan.io/verifyContract
Truffle:https://github.com/rkalis/truffle-plugin-verify
Hardhat:https://www.npmjs.com/package/@nomiclabs/hardhat-etherscan
EtherscanAPI:https://etherscan.io/apis#contracts
這篇博文:https://soliditydeveloper.com/decentralized-etherscan
CellNetwork:https://www.cellnetwork.io/?utm_souce=learnblockchain
免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。
本文來源于非小號媒體平臺:
登鏈社區
現已在非小號資訊平臺發布105篇作品,
非小號開放平臺歡迎幣圈作者入駐
入駐指南:
/apply_guide/
本文網址:
/news/9921987.html
免責聲明:
1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場
上一篇:
Bitfinex一周簡報
1.關注公眾號:道說區塊鏈2.后臺回復:電子書3.獲取《DeFi實戰投資方法論》電子書昨天以太坊社區的開發者發表了一個在社區引起廣泛討論的話題.
1900/1/1 0:00:00DOGE狗狗幣簡介詳情 Dogecoin,有人稱作"狗狗幣/狗幣",誕生于2013年12月8日,基于Scrypt算法,是國際上用戶數僅次于比特幣的第二大虛擬貨幣.
1900/1/1 0:00:00尊敬的用戶: ChiaNetwork是一個去中心化的開源全球區塊鏈,與傳統的工作量證明加密貨幣相比,其浪費更少,去中心化程度更高,更安全.
1900/1/1 0:00:00想在投資市場占有一席之地,好的心態至關重要,能用到的機會就有價值,機遇太多,誘惑也太多,學會篩選和等待,輔助果敢而恰當的出擊,才能把握一波波趨勢帶來的豐厚利潤.
1900/1/1 0:00:00Gate.io直播間作為行業內首個交易所內置直播功能,通過多樣性的直播形式為平臺用戶帶來具有深度、有趣、開放的信息內容.
1900/1/1 0:00:00尊敬的客戶: 由于杠桿ETF產品OKB3S、HT3S、MATIC3S的凈值已低于或接近0.050USDT,觸發了杠桿ETF產品份額合并機制.
1900/1/1 0:00:00