IoTeX Mainnet v1.2 — IoTeX上のEthereumツールのための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

IoTeX Mainnet v1.2 — Web3.js for Ethereum Tools on IoTeX & Node/Database Upgrades

2021年の第1四半期に、IoTeXからの新たな研究、パートナーシップ、エコシステムイニシアチブを含む発表の溢れを目にしました。しかし、それはIoTeXコアチームが行っていることのほんの表面を撫でるに過ぎません。舞台裏では、私たちはネットワークの“心臓部”を強化するために積極的な開発を続けてきました。iotex-core、すべてのデリゲートとフルノードによって運営されるブロックチェーンプロトコルで、IoTeXネットワーク全体に命を与えています。

このブログでは、待望のMainnet v1.2コードリリースの素晴らしい機能とツールを共有します。これは4月30日に正式にリリースされました。IoTeXデリゲートは5月24日までにノードをアップグレードする必要があります。その後、Mainnet v1.2が正式にアクティブになります!

IoTeX上のEthereumツールのためのWeb3.jsラッパー

IoTeXはSolidityスマートコントラクトをサポートするEVM互換のブロックチェーンであり、Ethereum Dappsを簡単にIoTeXにポートすることができます。Ethereum開発者がIoTeXプラットフォームに製品を構築/拡張しやすくするために、IoTeXユーザー/ビルダーがIoTeX上でEthereumツールの豊富なエコシステムを利用できるようにするEthereumノードAPIラッパーであるBabelを導入しています。これにより、MetaMaskRemixTruffleGraphなどのツール/サービスがBabelエンドポイントを指し示すだけでIoTeXと連携することができます!

IoTeXは間もなくMetaMaskのようなEthereumツールに対応します

Web3.jsは、HTTP、IPC、またはWebSocketを使用してローカルまたはリモートのEthereumノードと対話するためのライブラリのコレクションです。IoTeXネットワーク上でEthereumツールを使用してDAppsを開発するためにWeb3.jsを構成する方法についての詳細なドキュメントをお楽しみに!

ブロックチェーンデータベース管理のアップグレード

iotex-coreフルノードのデータベースは現在60GBに近づいており、ネットワーク上のデバイスおよびDapp活動の急増に伴い成長することが期待されています。IoTeXはフルノードやブロック生成のデリゲートノードを運営するのに過剰な資本をハードウェアおよびストレージに費やすことなく誰もが負担できるように、私たちのブロックチェーンコードをできるだけ効率的にすることを約束しています。Mainnet v1.2は、さまざまなブロックチェーンデータベース管理のアップグレードを通じて、オープンな参加へのコミットメントを拡張します。

複数のデータベースファイル

今四半期から、IoTeXコアチームはブロックチェーンデータベースを合理化するために多くの時間と労力を費やしました。Mainnet v1.2では、iotex-coreが複数のデータベースファイルにデータベースを分割するとともに、それぞれのファイルに1,000,000ブロックが含まれるようになります。長期的には、この分割により1つの巨大なデータベースファイルに起因するボトルネックを防ぎ、ノードが最新のデータベースファイルから選択的にダウンロードすることができるため、ネットワークとの迅速で漸進的な同期が可能になります。

減少したデータベースファイルサイズ

複数のデータベースファイルを使用したストレージアーキテクチャのアップグレードに加えて、データベースファイル自体を大幅に改善されたブロックストレージアプローチを使用して見直しました。これにより、ストレージスペースの約30%の節約が見込まれています。迅速な同期と合理化されたストレージは、素晴らしいノードオペレーター体験を提供します!

ブロックチェーンクエリ時の速度向上

データベース内のトランザクションインデックススキームの改善にも取り組んできました。その結果、特定のAPIクエリ、たとえば特定のブロック範囲内のアドレスからすべてのトランザクションを引き出すことが、より迅速に応答されるようになります。

ノード管理およびログのアップグレード

ソフトウェアで何か悪いことが起こると、ログがあなたを救うことがあります。しかし、ブロックチェーンノードのログを調査すること(特に、5秒ごとに即時に確定されたブロックを持つIoTeXのような高速ネットワークのため)は複雑で時間がかかります。問題を理解するために必要なデータを抽出することは、ログのサイズのために不可能であることさえあります。Mainnet v1.2ではこれを修正します。

ノードログフォーマットはELKをサポート

ノードオペレーターの生活をかつてなく楽にするために、ログフォーマットの改善を行い、特にELKスタックに対応させます!これにより、ノードにインストールされた“Beats”エージェントを使用してノードからログを引き出し、人気のElasticsearch + Kibanaサーバーに送信してこれらのログを分析し、ノード監視、トラブルシューティング、セキュリティ分析などの可視化を作成できます。何よりも、ELKは完全にオープンソースであり、ELKのデプロイや管理の柔軟性を提供します。

“ゾンビ”ノードはもうない

特にデリゲートの皆さんは、ネットワーク接続が切断された後、ノードがブロックチェーンと同期できないことに気づいたかもしれません。このようなノードは、ロブストな監視システムがなければ、再接続が回復してもノードは“ゾンビ”状態のままになってしまいます。これはデリゲートにとって特に危険で、ノードはブロックの生成を停止する可能性があります。

この潜在的な問題を避けるために、iotex-coreのコードを改善し、ノードがインターネット接続が回復した後に直ちにそのようなイベントを検出し、p2pネットワークと再接続できるようにしました。これにより、ノードはブロックチェーンと即時に再同期し、ネットワークのダウンタイムのリスクを大幅に減少させることができます。

次は何ですか?

私たちはMainnet v1.2を実現し、IoTeXネットワークを次のレベルに進化させることに興奮しています。2020年8月のMainnet v1.1以来、IoTeXチームは数ヶ月にわたって新しいMainnet v1.2のリリースに熱心に取り組んできました。Mainnet v1.2に加えて、私たちのGitHubアクティビティをフォローしている方は、ioPayiotexscanPebble TrackerSDKs、およびstakingリポジトリにわたる一貫した重要なアップグレードを見ていることでしょう — IoTeXは本当にすべてのシリンダーで稼働しています!

Mainnet v1.2のコードは、デリゲートがノードにインストールするために4月30日金曜日に公開されます。ハードフォークコードのリリースとして、デリゲートは5月24日までにノードをアップグレードする必要があります — さらに最新の情報はIoTeX Developer Twitterをフォローしてください!

今後のコードリリースでは、IoTeX Mainnetは新しいバージョンv0.6.xのEVMをサポートし、開発者にとって多くの新しい機能を提供します。これには、コードをより明示的/安全にするための必須の“キーワード”、コードの文法と構文の改善、例外処理のためのtry/catch構文、address-to-address payableの明示的な変換のためのpayable(x)命令、動的ストレージ配列のためのpush()、およびその他多数が含まれます。

IoTeXについて

2017年にオープンソースプラットフォームとして設立されたIoTeXは、信頼できるもののインターネットを構築しており、すべての“もの” — 人間、機械、ビジネス、DApps — が信頼とプライバシーを持って相互作用できるオープンエコシステムです。30人以上のトップ研究科学者とエンジニアからなるグローバルチームに支えられたIoTeXは、ブロックチェーン、安全なハードウェア、機密コンピューティングを組み合わせて、次世代のIoTデバイス、ネットワーク、経済を実現します。IoTeXは、物理的な世界をブロックごとに“接続する”ことで未来の分散型経済を実現します。

詳細を学ぶ: ウェブサイト | Twitter | Telegram | Medium | Reddit