The Ethereum platform allows developers to implement and deploy applications called Dapps onto the blockchain for public use through the use of smart contracts. To execute code within a smart contract, a paid transaction must be issued towards one of the functions that are exposed in the interface of a contract. However, such a transaction is only processed once one of the miners in the peer-to-peer network selects it, adds it to a block, and appends that block to the blockchain This creates a delay between transaction submission and code execution. It is crucial for Dapp developers to be able to precisely estimate when transactions will be processed, since this allows them to define and provide a certain Quality of Service (QoS) level (e.g., 95% of the transactions processed within 1 minute). However, the impact that different factors have on these times have not yet been studied. Processing time estimation services are used by Dapp developers to achieve predefined QoS. Yet, these services offer minimal insights into what factors impact processing times. Considering the vast amount of data that surrounds the Ethereum blockchain, changes in processing times are hard for Dapp developers to predict, making it difficult to maintain said QoS. In our study, we build random forest models to understand the factors that are associated with transaction processing times. We engineer several features that capture blockchain internal factors, as well as gas pricing behaviors of transaction issuers. By interpreting our models, we conclude that features surrounding gas pricing behaviors are very strongly associated with transaction processing times. Based on our empirical results, we provide Dapp developers with concrete insights that can help them provide and maintain high levels of QoS.
翻译:Eceenum 平台允许开发商通过使用智能合同,将名为 Dapps 的应用程序安装到公用链中。 要在智能合同中执行代码, 必须在智能合同中执行代码。 要在智能合同中执行代码, 就必须向合同界面中暴露的功能之一发放有偿交易。 但是, 只有当同行对等网络中一名矿工选择了交易, 才会将交易添加到一个模块中, 并附加到块链中。 这造成了交易提交和代码执行之间的延迟。 Dapt 开发商必须能够准确估计交易将何时被处理, 因为这允许他们定义和提供一定的服务质量( Qos) 。 然而, 只有当同行对矿工网络中一名矿工选择了交易, 并且只是将时间估算服务添加到预定义的 Qo 。 然而, 这些服务对影响交易提交和代码执行的时间提供了极少的洞察度。 考虑到在Eieum连锁链中有大量的数据, 处理时间的变化对于Dapps 交易的处理时间是困难的, 使得Dapps 能够对森林定价进行精确的进度做出预测。