日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鏈上智能合約Dapp開發(fā)技術(shù)部署

搭建punk2558 ? 來源:搭建punk2558 ? 作者:搭建punk2558 ? 2022-06-20 18:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

合約是代碼(它的功能)和數(shù)據(jù)(它的狀態(tài))的集合,存在于以太坊區(qū)塊鏈的特定地址。合約賬戶能夠在彼此之間傳遞信息,進(jìn)行圖靈完備的運算。合約依靠被稱作以太坊虛擬機(EVM)字節(jié)代碼(以太坊特有的二進(jìn)制格式)上的區(qū)塊鏈運行。

合約很典型地用諸如Solidity等高級語言寫成,然后編譯成字節(jié)代碼上傳到區(qū)塊鏈上。

以太坊高級語言

合約依靠被稱作以太坊虛擬機(EVM)字節(jié)代碼(以太坊特有的二進(jìn)制格式)上的區(qū)塊鏈運行。然而,合約很典型地用諸如Solidity等高級語言寫成,然后用以太坊虛擬機編譯器編譯成字節(jié)代碼上傳到區(qū)塊鏈。

編譯合約

solidity合約的編譯可以通過很多機制完成。

通過命令行使用solc編譯器。

在geth或eth提供的javascript控制臺使用web3.eth.compile.solidity(這仍然需要安裝solc編譯器)。

在線Solidity實時編譯器。

建立solidity合約的Meteor dapp Cosmo。

Mix IDE。

以太坊錢包。

注意:關(guān)于solc和編譯Solidity合約代碼的更多信息可在此查看。

在geth設(shè)置solidity編譯器

如果你啟動了geth節(jié)點,就可以查看哪個編譯器可用。

這一指令會返回到顯示當(dāng)前哪個編譯器可用的字符串。

注意:solc編譯器和cpp-ethereum一起安裝?;蛘?,你可以自己創(chuàng)建。

如果你的solc可執(zhí)行文件不在標(biāo)準(zhǔn)位置,可以用—solc標(biāo)志為solc可執(zhí)行文件指定一個定制路線。

或者你可以通過控制臺在執(zhí)行期間設(shè)置這個選項:

編譯一個簡單合約

讓我們編譯一個簡單的合約源:

這個合約提供了一個單一方法multiply,它和一個正整數(shù)a調(diào)用并返回到a*7。

注意:編譯器通過RPC因此也能通過web3.js,對瀏覽器內(nèi)任何通過RPC/IPC連接到geth的Dapp可用。

下面的例子會向你展示如何通過JSON-RPC接合geth來使用編譯器。

Code編譯的以太坊虛擬機字節(jié)代碼

Info從編譯器輸出的額外元數(shù)據(jù)

Source源代碼

Language合約語言(Solidity,Serpent,LLL)

LanguageVersion合約語言版本

compilerVersion用于編譯這個合約的solidity編譯器版本。

abiDefinition應(yīng)用的二進(jìn)制界面定義

userDoc用戶的NatSpec Doc。

developerDoc開發(fā)者的NatSpec Doc。

編譯器輸出的直接結(jié)構(gòu)化(到code和info)反映了兩種非常不同的部署路徑。編譯的以太坊虛擬機代碼和一個合約創(chuàng)建交易被發(fā)送到區(qū)塊,剩下的(info)在理想狀態(tài)下會存活在去中心化云上,公開驗證的元數(shù)據(jù)則執(zhí)行區(qū)塊鏈上的代碼。

如果你的源包含多個合約,輸出會包括每個合約一個入口,對應(yīng)的合約信息對象可以用作為屬性名稱的合約名字檢索到。你可以通過檢測當(dāng)前的GlobalRegistrar代碼來試一下:

創(chuàng)建和部署合約

開始這一章節(jié)之前,確保你有解鎖的賬戶和一些資金。你現(xiàn)在會在區(qū)塊鏈上創(chuàng)建一個合約,方法是用上一章節(jié)的以太坊虛擬機代碼作為數(shù)據(jù)給空地址發(fā)送交易。

注意:用在線Solidity實時編譯器或Mix IDE程序會更容易完成。

所有的二進(jìn)制數(shù)據(jù)都以十六進(jìn)制的格式序列化。十六進(jìn)制字符串總會有一個十六進(jìn)制前綴0x。

注意:注意arg1,arg2,…是合約構(gòu)造函數(shù)參數(shù),以備它要接受參數(shù)。如果合約不需要構(gòu)造函數(shù)參數(shù),就可以忽略這些參數(shù)。

值得指出的是,這一步驟需要你支付執(zhí)行。一旦交易成功進(jìn)入到區(qū)塊,你的賬戶余額(你作為發(fā)送方放在from領(lǐng)域)會根據(jù)以太坊虛擬機的gas規(guī)則被扣減。一段時間以后,你的交易會在一個區(qū)塊中出現(xiàn),確認(rèn)它帶來的狀態(tài)是共識。你的合約現(xiàn)在存在于區(qū)塊鏈上。以不同步的方式做同樣的事看起來是這樣:

與合約交互

與合約交互典型的做法是用諸如eth.contract()功能的抽象層,它會返回到j(luò)avascript對象,和所有可用的合約功能一起,作為可調(diào)用的javascript功能。描述合約可用功能的標(biāo)準(zhǔn)方式是ABI定義。這個對象是一個字符串,它描述了調(diào)用簽名和每個可用合約功能的返回值。

現(xiàn)在ABI中具體說明的所有功能調(diào)用都在合約實例中可用。你可以用兩種方法中的一種來調(diào)用這些合約實例上的方法。

當(dāng)用sendTransaction被調(diào)用的時候,功能調(diào)用通過發(fā)送交易來執(zhí)行。需要花費以太幣來發(fā)送,調(diào)用會永久記錄在區(qū)塊鏈上。用這種方式進(jìn)行的調(diào)用返回值是交易散表。

當(dāng)用call被調(diào)用的時候,功能在以太坊虛擬機被本地執(zhí)行,功能返回值和功能一起返回。用這種方式進(jìn)行的調(diào)用不會記錄在區(qū)塊鏈上,因此也不會改變合約內(nèi)部狀態(tài)。這種調(diào)用方式被稱為恒定功能調(diào)用。以這種方式進(jìn)行的調(diào)用不花費以太幣。

如果你只對返回值感興趣,那么你應(yīng)該用call。如果你只關(guān)心合約狀態(tài)的副作用,就應(yīng)該用sendTransaction。

在上面的例子中,不會產(chǎn)生副作用,因此sendTransaction只會燒gas,增加宇宙的熵。

測試合約和交易

你通常需要低級的測試策略,為交易和合約排除故障。這一章節(jié)介紹了一些你可以用到的排錯工作和做法。為了測試合約和交易而不產(chǎn)生實際的后果,你最好在私有區(qū)塊鏈上測試。這可以通過配置一個替代網(wǎng)絡(luò)ID(選擇一個特別的數(shù)字)和/或不能用的端點來實現(xiàn)。推薦做法是,為了測試你用一個替代數(shù)據(jù)目錄和端口,這樣就不會意外地和實時運行的節(jié)點沖突(假定用默認(rèn)運行。

審核編輯:符乾江

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7349

    瀏覽量

    95053
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4977

    瀏覽量

    74416
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    基于 LES30-NTC-RS485 的冷物流車廂溫度智能監(jiān)控解決方案

    車載長期穩(wěn)定運行需求。 二、基于 LES30-NTC-RS485 的冷車廂智能溫控系統(tǒng)整體架構(gòu) 本系統(tǒng)以 LES30-NTC-RS485 為核心采集終端,搭配 10K B3950 NTC 溫度傳感器
    發(fā)表于 03-30 09:28

    【2025夏季班正課】大模型Agent智能開發(fā)實戰(zhàn) 課分享

    拆解與規(guī)劃,行動層負(fù)責(zé)工具調(diào)用與接口適配。通過這種分層解耦,智能體的各個組件能夠獨立迭代與優(yōu)化,避免了牽一發(fā)而動全身的維護(hù)災(zāi)難。 其次,體系化開發(fā)強調(diào)“全路工程技術(shù)”的閉環(huán)建設(shè)。在碎
    發(fā)表于 03-29 16:12

    基于 LES33-HUB-3-RS485 的冷倉庫多傳感器智能組網(wǎng)解決方案

    ,構(gòu)建了一套 “接入 - 中繼 - 隔離 - 傳輸” 全閉環(huán)的冷倉庫多傳感器智能組網(wǎng)系統(tǒng)。文章詳細(xì)闡述了系統(tǒng)整體架構(gòu)、核心產(chǎn)品技術(shù)特性、應(yīng)用價值與效益,為冷倉庫多區(qū)域、遠(yuǎn)距離的溫濕
    發(fā)表于 03-17 16:01

    在Arduino UNO Q開發(fā)部署OpenClaw開源AI智能

    近期 OpenClaw 邊緣 AI 火遍開發(fā)者社區(qū),百元開發(fā)板跑 AI 智能體的演示讓無數(shù)技術(shù)愛好者沸騰!想低成本上手這款開源 AI 智能
    的頭像 發(fā)表于 03-09 10:03 ?1490次閱讀
    在Arduino UNO Q<b class='flag-5'>開發(fā)</b>板<b class='flag-5'>部署</b>OpenClaw開源AI<b class='flag-5'>智能</b>體

    香橙派昇騰系列開發(fā)板如何部署OpenClaw

    香橙派昇騰系列開發(fā)板解鎖專業(yè)級智能體,OpenClaw擁抱高算力未來 上兩篇文章我們給出了香橙派此芯及RK系列產(chǎn)品部署OpenClaw的教程,接下來我們將這只智能小龍蝦接入到昇騰系列
    發(fā)表于 02-25 10:13

    黑芝麻智能華山A2000 BaRT工具助力輔助駕駛模型部署

    隨著智駕模型參數(shù)規(guī)模與計算復(fù)雜度指數(shù)級增長,大模型應(yīng)用與車端硬件、性能功耗的矛盾愈發(fā)凸顯,成為技術(shù)量產(chǎn)的關(guān)鍵瓶頸。在此背景下,黑芝麻智能華山A2000 BaRT 工具以 MLIR 框架為基礎(chǔ),為輔助駕駛模型規(guī)?;?、高性能、低功
    的頭像 發(fā)表于 02-02 15:37 ?585次閱讀
    黑芝麻<b class='flag-5'>智能</b>華山A2000 BaRT工具<b class='flag-5'>鏈</b>助力輔助駕駛模型<b class='flag-5'>部署</b>

    卡塔爾通訊與信息技術(shù)部與Ooredoo電信公司一行來訪達(dá)實智能開展培訓(xùn)

    2026年1月7日至8日,卡塔爾通訊與信息技術(shù)部(MCIT)以及卡塔爾Ooredoo電信公司一行來訪達(dá)實智能開展培訓(xùn)。達(dá)實智能董事長劉磅、副總裁易鴻、海灣區(qū)域經(jīng)理海樂姆(阿拉伯籍)等陪同接待。
    的頭像 發(fā)表于 01-09 16:03 ?913次閱讀

    從設(shè)計到部署:AI即服務(wù)平臺開發(fā)深度剖析

    從頂層設(shè)計到最終部署,一個成功的AI即服務(wù)平臺開發(fā)是一項復(fù)雜的系統(tǒng)工程,它融合了軟件工程、數(shù)據(jù)科學(xué)和運維技術(shù)的精髓。
    的頭像 發(fā)表于 11-13 14:16 ?461次閱讀

    湖南移動攜手華為在湘潭大學(xué)完成5G-A超級上行技術(shù)部署

    近日,湖南移動聯(lián)合華為在5G-A技術(shù)創(chuàng)新領(lǐng)域再獲重大突破——雙方在湘潭大學(xué)成功完成5G-A超級上行技術(shù)部署。依托華為F/A SUL(輔助上行)核心方案,此次部署實現(xiàn)5G單用戶上行峰值速率突破
    的頭像 發(fā)表于 10-21 10:01 ?863次閱讀

    聆思大模型智能FAE,看得懂技術(shù),答得準(zhǔn)問題

    聆思大模型智能FAE,看得懂技術(shù),答得準(zhǔn)問題 在智能硬件開發(fā)的嵌入式技術(shù)支持中,響應(yīng)遲緩、人員培訓(xùn)成本高企、服務(wù)時間覆蓋不足等痛點,常常制約
    發(fā)表于 09-30 11:29

    【米爾RK3576開發(fā)板免費體驗】1、開發(fā)環(huán)境、鏡像燒錄、QT開發(fā)環(huán)境搭建以及應(yīng)用部署

    微處理器推出的嵌入式模組,具備超高性 能、豐富的拓展接口和邊緣算力,適用于邊緣計算設(shè)備、商用機器人、AI 商顯、智能車載終 端、智慧電力等。 開發(fā)板的硬件連接如下 1、Linux_SDK構(gòu)建和工具
    發(fā)表于 07-14 11:26

    軟通動力中標(biāo)揚子江藥業(yè)信息技術(shù)部基礎(chǔ)架構(gòu)與安全咨詢項目

    軟通動力成功中標(biāo)揚子江藥業(yè)集團信息技術(shù)部基礎(chǔ)架構(gòu)與安全咨詢項目,將充分發(fā)揮自身專業(yè)咨詢能力,為揚子江藥業(yè)集團未來3-5年的IT基礎(chǔ)架構(gòu)與信息安全建設(shè)提供頂層規(guī)劃與實施路徑,攜手共赴高質(zhì)量發(fā)展新征程。
    的頭像 發(fā)表于 06-11 11:36 ?1155次閱讀

    物聯(lián)網(wǎng)工程師為什么要學(xué)Linux?

    均基于Linux二次開發(fā)。 2)邊緣計算與AI整合 隨著邊緣智能設(shè)備的普及,Linux在輕量化AI模型部署(如TensorFlow Lite)和異構(gòu)計算(ARM+GPU)中占據(jù)核心地位。 對于物
    發(fā)表于 05-26 10:32

    HarmonyOS5云服務(wù)技術(shù)分享--Serverless抽獎模板部署

    測試服務(wù)PTS 希望這篇教程能幫你快速上手!如果部署過程中遇到問題,歡迎在評論區(qū)留言交流~ 也歡迎關(guān)注我的技術(shù)博客,每周更新HarmonyOS開發(fā)實戰(zhàn)技巧。祝各位開發(fā)者一次
    發(fā)表于 05-22 20:25

    ElfBoard技術(shù)實戰(zhàn)|ELF 2開發(fā)板本地部署DeepSeek大模型的完整指南

    ELF 2開發(fā)板本地部署DeepSeek大模型的完整指南
    的頭像 發(fā)表于 05-16 11:13 ?2794次閱讀
    ElfBoard<b class='flag-5'>技術(shù)</b>實戰(zhàn)|ELF 2<b class='flag-5'>開發(fā)</b>板本地<b class='flag-5'>部署</b>DeepSeek大模型的完整指南
    肃南| 和龙市| 额济纳旗| 松阳县| 阳朔县| 石柱| 青海省| 宣化县| 融水| 清流县| 淳化县| 米易县| 汶上县| 临海市| 微博| 澄城县| 琼中| 白沙| 米林县| 云浮市| 阿拉善盟| 黄浦区| 壶关县| 金川县| 三台县| 岐山县| 水富县| 肃南| 城口县| 鹤壁市| 佳木斯市| 宝坻区| 莎车县| 额尔古纳市| 乌鲁木齐县| 麻江县| 曲阜市| 尼玛县| 克拉玛依市| 松滋市| 林口县|