前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我连敲3年代码, 工资却不如刚入职的TA!

我连敲3年代码, 工资却不如刚入职的TA!

作者头像
区块链大本营
发布2018-12-17 17:14:56
6420
发布2018-12-17 17:14:56
举报
文章被收录于专栏:区块链大本营区块链大本营

以太坊让世人第一次知道了智能合约的概念,为了支持智能合约,以太坊必须把自己变的特别像一台计算机,那么全球的节点连接到一起,怎么能像一个计算机呢?那就是使用 EVM(以太坊虚拟机)技术,让每个节点的链表上可以运行智能合约的指令。全球的以太坊节点连接起来,也就形成了全球计算机。

对有一定编程经验的人来说,Solidity 开发绝对不是什么难事。Solidity 确实极容易上手,但是确实有很多细节需要注意的。一个智能合约是怎样部署到以太坊网络的呢?

以太坊智能合约可以通过编辑器经过rpc远程调用(默认用8545端口)发布到geth节点上,最终在以太坊网络中运行。

众所周知,我们在以太坊上执行智能合约是需要消耗 gas 的,也就是说没有以太是不能运行的,这对很多童鞋来说表示难以理解。其实这涉及到经济系统的利益问题,我们执行了一个指令,整个网络都要同步数据,而这些指令是需要矿工进行打包交易的,如果矿工的利益不能保证,最后也就将导致整个网络无人维护。

那么问题又来了,矿工有利益,开发者的收益如何实现呢?这就要具体问题具体分析,有些需求是为了保证数据存储在区块链上永不丢失,这个是保存类价值。对于开发者来说,开发出来爆款的 DApp 就是最大的收益,参考之前火爆的加密猫。

TPS 较低也是阻碍区块链发展的一大原因,这是区块链的架构决定,达成共识方面本就需要时间。作为应用的开发者来说,应该让用户有更好的体验。对于一个未确认的交易,我们可以采用监控事件的方式进行处理,这就是一个异步模式,这个事件其实类似于我们平常写程序里经常使用的 print。

合约代码如下:

js代码中添加事件的处理(map_event.js)

运行时启动geth需要注意参数:

geth --datadir ./data --networkid 15 --port 30303 --rpc --rpcaddr 0.0.0.0 --rpcport 8545 --rpcvhosts "*" --rpcapi 'db,net,eth,web3,personal' --rpccorsdomain "*" --ws --wsaddr "localhost" --wsport "8546" --wsorigins "*" --nat "any" --nodiscover --dev --dev.period 1 console 2> 1.log

运行效果如下:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 区块链大本营 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据保险箱
数据保险箱(Cloud Data Coffer Service,CDCS)为您提供更高安全系数的企业核心数据存储服务。您可以通过自定义过期天数的方法删除数据,避免误删带来的损害,还可以将数据跨地域存储,防止一些不可抗因素导致的数据丢失。数据保险箱支持通过控制台、API 等多样化方式快速简单接入,实现海量数据的存储管理。您可以使用数据保险箱对文件数据进行上传、下载,最终实现数据的安全存储和提取。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档