IoTeX主网v1.7现已上线!
今天标志着IoTeX区块链的又一次重大发布,带来了对IoTeX协议的显著改进。iotex-core 1.7.0于3月15日发布给节点运营商,并刚刚被激活。[大约在2022年3月24日晚上11点UTC左右]。此次发布带来了许多API改进,将加速dApp开发和复杂智能合约的调试。节点运营商将受益于更简单的以太坊API服务架构和更好的日志管理。数据库和网络性能也有所提升。IoTeX始终在构建、完善,并持续迭代,以便实现更简单的dApp开发和入门。除了dApp变得更易于构建之外,区块链在性能上更可靠、更安全。让我们更详细地看看一些主要变化……
API
跟踪合约执行
区块链合约的执行可能很复杂,特别是当它们涉及对其他合约的调用时。EVM兼容平台中的标准区块链API通常只告诉开发者某个操作是成功还是被回滚。新的TraceTransactionStructLogs API调用相当于以太坊的trace_call,在单个合约调用的执行过程中收集低级详细信息,为开发者提供了有关操作执行期间发生了什么的有用见解。任何启用了API网关服务的IoTeX节点都可以使用此API。
合约存储解码API
该API允许解码智能合约特定内存位置的存储数据。它作为本地IoTeX GRPc API调用(ReadContractStorage)和以太坊JSON API调用(eth_getStorageAt)提供。
getActions API结果中的燃气费用值
在查询操作详情时,特定操作实际花费的燃气费用值在响应对象中缺失。现在,任何返回交易详细信息的本地或以太坊API调用都会提供该值。
交易收据和EVM日志中的索引值
在1.7.0激活时,当查询交易收据时,将提供transactionIndex值以及EVM日志数组中每条日志项的logIndex值。transactionIndex字段提供了交易在区块中的位置,在交易排序重要时非常有用。logIndex提供合约执行的EVM日志的正确序列。
节点操作
本地以太坊JSON API
区块链版本1.2.0标志着IoTeX开发者的重要里程碑。通过IoTeX节点对以太坊签名交易的本地支持和以太坊JSON API服务("Babel")的发布,IoTeX与以太坊的兼容性达到了完美。这允许任何以太坊 dApp移植到IoTeX,而无需对合约或客户端代码进行任何更改。然而,以太坊API作为一个外部服务实现,必须单独部署并指向实际的IoTeX节点才能正常工作。随着iotex-core 1.7.0,以太坊API服务器现在本地集成,并直接由IoTeX节点公开。无需运行、配置和管理外部服务。只需启用您的IoTeX节点的网关功能,即可获取同时公开的IoTeX本地API和以太坊API。
日志轮换
Logrotate已安装到节点Docker映像中,以更有效地管理和存储节点日志文件。节点现在创建多个较小的日志文件,而不是一个大的日志文件。那些过于陈旧的日志文件会被删除。logrotate配置位于Docker映像中。默认设置会每天创建新的日志文件。日志文件在30天后被删除。
性能
主网和测试网的p2p网络分离
通过此更改,IoTeX测试网和主网在p2p网络级别上根据链ID的值被逻辑分开,该值现在已包含在所有p2p消息中。在某些特殊情况下,这减少了主网和测试网之间的网络流量干扰,并减轻了某些类型的攻击。
其他
区块链节点执行跟踪
在版本1.6.0中,我们引入了跟踪代码,以收集节点关键执行路径上的运行时日志。该跟踪代码现在已启用并配置为将数据发送到后端,在那里进行聚合和分析。这是IoTeX开发核心团队监控链执行的一个宝贵工具,并在检测到奇怪行为或错误时及时发出警报。任何人都可以通过访问 https://tracing.iotex.me 查看数据。
更多
1.7.0中还实施了许多其他小BUG修复和改进。请查看GitHub上的发布页面了解更多信息。我们希望你能够更多参与。请加入我们的Discord频道。