前言
“老板说,小杨,现在的ETH的Gas太贵了,把现在的合约业务都切换到BSC上吧。”, 小杨 – “ 收到,老板” 。。。。。。
开始了连续几周的加班中, 最近在用Metamask钱包上,对应BSC,然后开始修改合约,修改钱包,修改DAPP,俨然重来一遍啊。
本次记录下一些过程,修正BSC下的wallet的币种的价格,修复BSC下的GasPrice 获取服务,本次主要讲解Gas Price的获取, ETH的Gas价格是 BSC 的180x ,大家都切换到BSC吧,一样玩的很hi啊。
正文
先讲结果, 通过将钱包的默认Gas价格服务修改到自己搭建的节点上,省下了180x的Gas,虽然没几个币,但是总量算起来还是蛮多的,所以有必要花时间来处理下.
Metamask ETH Gas Price: (单位Gwei)
1 | curl https://api.metaswap.codefi.network/gasPrices |
CoinPhD BSC Gas Price: (单位Gwei)
1 | curl https://coinphd.com/api/bscgasprice |
从返回的结果来看,ETH 的Gas价格是BSC的 227/5 x 4 = 190 X , 在ETH上做操作的人,都是贼有钱。。。。。。
强烈推荐大家都来BSC上来玩
在Metamask上,使用修改过的Gas Price服务,看到Gas费用基本可以忽略了。
在对BSC的tx进行分析后发现, 土豪很多,7000+ Gwei的gas也大有人在,看到最大的 42538.538, 所以在BSC上争抢交易的事情也在发生,接下来会在写一篇关于BSC上使用gas的土豪分析的文章。
想想还是把Gas Price服务开源吧,都是学习的过程,进来留在Github上,希望对大家有帮助。
访问: https://github.com/xinqiyang/bscgasprice 下载最新的源码
实现用Python + Web3 实现的,实现了重连和同时获取多个备用节点的国内,BSC提供了3个主节点,但是第三个连不上,目前2个可用。
1 | git clone https://github.com/xinqiyang/bscgasprice |
核心代码:
拿到web3的实例,然后需要设定 poa middleware 之后即可去连BSC了, 在轮询获取 last block 并统计 tx.gasPrice 进行计算,得出gas price的值。
1 | localw3 = web3_instance() |
其实比较简单,就是网络有时候有问题, 需要重连,这个地方搞了2个小时,后面只能exception的时候,重新去创建web3连接。
这个是跑起来的服务器的日志,发现连接次数太多,会被block一段时间,所以需要增加timeout。
返回的json,针对Metamask的格式进行优化过了,欢迎大家使用。
如果不想大家自己的GasPrice服务节点,可以使用CoinPhD BSC Gas Price Service :
https://coinphd.com/api/bscgasprice
这个api我会一直维护下去。
结语
提供免费的服务给大家,是CoinPhD接下来的方向,DEFI很有意思,BSC比起ETH来,确实更适合国人来用。
Gas Price只是简单的服务,但是之前不注意,还是相当贵的,所以BSC在基础服务上还是需要继续完善啊。
CoinPhD要复活了,接下来多开源一些有用的服务,为DEFI继续搬砖。。