IoTeX主网v1.2 — 在IoTeX上的以太坊工具的Web3.js
During the first quarter of 2021, we saw an overflow of announcements from IoTeX, including new research, partnerships, and ecosystem initiatives. But that just scratches the surface... read more
在2021年第一季度,我们看到IoTeX发布了大量公告,包括新的研究、合作伙伴关系和生态系统倡议。但这只是IoTeX核心团队所做工作的表面。在幕后,我们继续积极开发,以增强网络的“心脏”,iotex-core, 所有代理和完整节点运行的区块链协议,赋予整个IoTeX网络以生命。
在这篇博客中,我们分享了我们备受期待的主网v1.2代码发布,该版本于4月30日正式发布。 IoTeX代理有时间直到5月24日升级他们的节点,之后主网v1.2将正式激活!
IoTeX上的以太坊工具的Web3.js包装器
IoTeX是一个兼容EVM的区块链,支持Solidity智能合约,使以太坊Dapps能够轻松移植到IoTeX平台。为了让以太坊开发者能够更轻松地将产品构建/扩展到IoTeX平台,我们引入了Babel,一个以太坊节点API包装器,使IoTeX用户/构建者能够在IoTeX上利用丰富的以太坊工具生态系统。这意味着像MetaMask、Remix、Truffle、Graph等工具/服务能够通过指向Babel端点与IoTeX一起工作!
Web3.js是一组库,允许您使用HTTP、IPC或WebSocket与本地或远程以太坊节点进行交互。请关注我们关于如何配置Web3.js以在IoTeX网络上使用以太坊工具开发DApps的详细文档。
区块链数据库管理升级
iotex-core完整节点数据库现在接近60GB,预计随着设备和Dapp活动的快速增加而增长。IoTeX致力于使我们的区块链代码尽可能高效,以便任何人都能负担得起运营完整节点,甚至是区块生产代理节点,而不必在硬件和存储上花费巨额资金。主网v1.2将通过多种区块链数据库管理升级来扩展我们对开放参与的承诺。
多个数据库文件
从本季度开始,IoTeX核心团队花费了大量时间和努力来简化我们的区块链数据库——通过主网v1.2,iotex-core现在将数据库拆分为多个数据库文件,每个文件包含1,000,000个区块。从长远来看,这种拆分将防止单个庞大数据库文件造成的瓶颈,并为更快的增量同步打开可能性,在这种情况下,节点可以选择从最近的数据库文件中下载。
减少数据库文件大小
结合多个数据库文件的存储架构升级,我们通过使用改进的区块存储方法重构了数据库文件本身,提供了更好的压缩。这将带来约30%的存储空间节省的预估提升。更快的同步 + 精简的存储 = 出色的节点操作体验!
查询区块链时速度提升
我们还在数据库中工作于改进的交易索引方案。因此,像在特定区块范围内从一个地址拉取所有交易这样的特定API查询现在将获得更快的响应。

节点管理与日志升级
当软件出现问题时,日志可以拯救你。但查看区块链节点的日志(尤其是对于像IoTeX这样每5秒即可完成区块的快速网络)可能会复杂且耗时。提取您需要的数据以了解问题甚至可能是不可能的,仅仅是因为日志的大小。主网v1.2将解决这一问题。
节点日志格式将支持ELK
我们将通过改善日志格式,使最近的居民变得比以往更轻松,特别是使其与ELK堆栈!兼容。这将使您能够从您的节点提取日志,并将其发送到流行的Elasticsearch + Kibana服务器,以分析这些日志,并创建可视化用于节点监控、故障排除、安全分析等。最重要的是,ELK是完全开源的,提供了很好的灵活性来部署/管理ELK。

不再有“僵尸”节点
你们中的一些人,尤其是代理,可能已经注意到您的节点在失去网络连接后无法与区块链同步,即使只是短时间的。这对于没有强大监控系统的节点来说,可能导致节点保持在“僵尸”状态,即使连接恢复也无法与区块链同步。这对于代理特别危险,因为节点可能停止生成区块。
为了避免这个潜在问题,我们改进了iotex-core的代码,使节点现在能够检测此类事件,并在恢复互联网连接后立即重新连接到p2p网络。这将使节点能够立即重新与区块链同步,极大地减少网络故障的风险。
接下来会怎样?
我们很高兴将主网v1.2带入现实,并将IoTeX网络发展到下一个级别。自我们的主网v1.1于2020年8月发布以来,IoTeX团队在即将到来的主网v1.2版本上努力工作了数月。除了主网v1.2,关注我们Github活动的人也看到了我们在ioPay、iotexscan、Pebble Tracker、SDK和质押库中的持续有效的升级——IoTeX确实在充分发挥作用!
主网v1.2代码将于4月30日(星期五)发布,供代理安装到他们的节点上。 作为硬分叉代码发布,代理有时间直到5月24日升级他们的节点——关注IoTeX开发者Twitter以获取更多更新!
在即将发布的代码中,IoTeX主网将支持新版本v0.6.x的EVM,这为开发者带来了多种新功能,包括强制性的“关键字”以使代码更明确/安全,代码语义和语法的改进,try/catch构造用于异常处理,显式的地址到地址可支付的转换(使用payable(x)指令),用于动态存储数组的push(),以及更多。

关于IoTeX
成立于2017年的开源平台,IoTeX正在构建可信任事物互联网,这是一个开放的生态系统,所有“事物”——人类、机器、商业和DApps——可以以信任和隐私进行互动。有30多名顶级研究科学家和工程师的全球团队支持,IoTeX结合了区块链、安全硬件和保密计算,以启用下一代物联网设备、网络和经济。IoTeX将通过“逐块连接物理世界”来赋能未来的去中心化经济。