2025 Paragraph Technologies Inc

PopularTrendingPrivacyTermsHome
ParagraphParagraph
Search...Ctrl+K

Mobius

Crypto HODL / Life-long learner / Super Rick Fan / Life is a Meme.

More from Mobius

S
Blog iconMobius
Dec 15

Solidity Gas优化的奇技淫巧

以太坊上存储256 bit数据大约消耗20k Gas、如此换算,仅1 GB存储资源要花费32,000ETH,按2021年12月14日ETH价格,大约要花费超过1亿美元。且不说当前身为贵族链Gas费很有可能继续水涨船高,放在早些年其Gas消耗也不是一笔小数目。因此,以太坊Gas优化是Dapp开发一直难绕的问题,也是Solidity开发者From Zero To Senior的必修之技。本文从我最近半年的以太坊项目开发的实战经验出发,从2个维度归纳了Gas优化的trick。一、数据类型优化多数时候,定义大小为256bit的变量(以便填满整个slot)是gas消耗最优的选择。EVM一个slot 256bit,当数据未填满slot,则需额外操作将剩余slot填为0。此外,数值类型也会先转化为uint256再进行计算。 (1)某些时候,将struct中连续定义的变量打包在一个slot中也可以减少gas消耗。需注意的是,如果不是对这些变量同时进行读写操作,那么也难以实现gas优化的效果。 Coding Examples:struct定义、赋值在struct内,需将存储在同一slot内的变量进...

关
Blog iconMobius
Jan 25

关于Price Oracle的原理及实现

广义的Oracle包括链上链下各种繁杂信息的转译和传递,要能实现无障碍的信息交互还是道阻且长,但在细分场景下,对Price Oracle的落地应用已经有较为成熟的解决方案。链下预言机(eg. Chainlink)Chainlink是去中心化网络,其中的节点将链下数据和信息通过预言机发送给智能合约。Link token用于支付节点提供的数据服务。 1. oracle作用:作为链上链下数据的“翻译机” 2. oracle提供数据服务process: (1)Requesting Contract发出数据请求 (2)Chainlink协议将请求注册为event,监听event创建SLA Contract(Chainlink Service Level Agreement Contract) (3)SLA合约生成三个sub-contracts:Chainlink Reputation Contract:验证oracle provider的历史记录,拒绝历史记录不良Node的服务;Chainlink Order-Matching Contract:转发Requesting Contract的...

View more
Search...Ctrl+K

Mobius

More from Mobius

S
Blog iconMobius
Dec 15

Solidity Gas优化的奇技淫巧

以太坊上存储256 bit数据大约消耗20k Gas、如此换算,仅1 GB存储资源要花费32,000ETH,按2021年12月14日ETH价格,大约要花费超过1亿美元。且不说当前身为贵族链Gas费很有可能继续水涨船高,放在早些年其Gas消耗也不是一笔小数目。因此,以太坊Gas优化是Dapp开发一直难绕的问题,也是Solidity开发者From Zero To Senior的必修之技。本文从我最近半年的以太坊项目开发的实战经验出发,从2个维度归纳了Gas优化的trick。一、数据类型优化多数时候,定义大小为256bit的变量(以便填满整个slot)是gas消耗最优的选择。EVM一个slot 256bit,当数据未填满slot,则需额外操作将剩余slot填为0。此外,数值类型也会先转化为uint256再进行计算。 (1)某些时候,将struct中连续定义的变量打包在一个slot中也可以减少gas消耗。需注意的是,如果不是对这些变量同时进行读写操作,那么也难以实现gas优化的效果。 Coding Examples:struct定义、赋值在struct内,需将存储在同一slot内的变量进...

关
Blog iconMobius
Jan 25

关于Price Oracle的原理及实现

广义的Oracle包括链上链下各种繁杂信息的转译和传递,要能实现无障碍的信息交互还是道阻且长,但在细分场景下,对Price Oracle的落地应用已经有较为成熟的解决方案。链下预言机(eg. Chainlink)Chainlink是去中心化网络,其中的节点将链下数据和信息通过预言机发送给智能合约。Link token用于支付节点提供的数据服务。 1. oracle作用:作为链上链下数据的“翻译机” 2. oracle提供数据服务process: (1)Requesting Contract发出数据请求 (2)Chainlink协议将请求注册为event,监听event创建SLA Contract(Chainlink Service Level Agreement Contract) (3)SLA合约生成三个sub-contracts:Chainlink Reputation Contract:验证oracle provider的历史记录,拒绝历史记录不良Node的服务;Chainlink Order-Matching Contract:转发Requesting Contract的...

View more

2025 Paragraph Technologies Inc

PopularTrendingPrivacyTermsHome

Crypto HODL / Life-long learner / Super Rick Fan / Life is a Meme.

Subscribe
Subscribe
Mobius

Subscribe to Mobius

Mobius

Subscribe to Mobius

Subscribe
Subscribe

<100 subscribers

<100 subscribers