IoTeX Mainnet v1.2 — Web3.js pour les outils Ethereum sur IoTeX et mises à niveau de nœud/base de données

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

Au cours du premier trimestre 2021, nous avons vu un flot d'annonces de la part d'IoTeX, y compris de nouvelles recherches, des partenariats et des initiatives d'écosystème. Mais cela ne fait qu'effleurer la surface de ce que l'équipe principale d'IoTeX a entrepris. En coulisses, nous avons poursuivi un développement agressif pour améliorer le "cœur" du réseau, iotex-core, le protocole blockchain exécuté par tous les Délégués et nœuds complets qui donne vie à l'ensemble du réseau IoTeX.

Dans ce blog, nous partageons les incroyables fonctionnalités et outils qui ont été empaquetés dans notre très attendu code de la Mainnet v1.2, qui a été officiellement publié le 30 avril. Les Délégués IoTeX auront jusqu'au 24 mai pour mettre à niveau leurs nœuds, après quoi la Mainnet v1.2 sera officiellement activée!

Wrapper Web3.js pour les outils Ethereum sur IoTeX

IoTeX est une blockchain compatible EVM qui prend en charge les contrats intelligents Solidity, permettant aux Dapps Ethereum d'être facilement portés sur IoTeX.‌ Pour faciliter encore plus la tâche des développeurs Ethereum à construire/étendre des produits sur la plateforme IoTeX, nous introduisons Babel, un wrapper API de nœud Ethereum qui permet aux utilisateurs/concepteurs IoTeX d'utiliser l'écosystème riche des outils Ethereum sur IoTeX. Cela signifie que des outils/services comme MetaMask, Remix, Truffle, Graph, et d'autres peuvent fonctionner avec IoTeX en les pointant simplement vers un point de terminaison Babel!

IoTeX sera bientôt compatible avec des outils Ethereum comme MetaMask

Web3.js est une collection de bibliothèques qui vous permet d'interagir avec un nœud Ethereum local ou distant via HTTP, IPC ou WebSocket. Restez à l'écoute pour notre documentation détaillée sur la façon de configurer Web3.js pour développer des DApps utilisant des outils Ethereum sur le réseau IoTeX.

Mises à niveau de la gestion de la base de données blockchain

La base de données du nœud complet iotex-core approche maintenant 60 Go et devrait croître avec l'augmentation rapide de l'activité des appareils + Dapp sur le réseau. IoTeX s'engage à rendre notre code blockchain aussi efficace que possible afin que quiconque puisse se permettre d'opérer un nœud complet, voire un nœud Délégué produisant des blocs, sans avoir à dépenser des sommes exorbitantes en matériel et en stockage. La Mainnet v1.2 étendra notre engagement envers la participation ouverte avec diverses mises à niveau de gestion de base de données blockchain.

Fichiers de base de données multiples

À partir de ce trimestre, l'équipe principale d'IoTeX a dépensé beaucoup de temps et d'efforts pour rationaliser notre base de données blockchain — avec la Mainnet v1.2, iotex-core va désormais diviser la base de données en plusieurs fichiers de base de données chacun contenant 1 000 000 de blocs. À long terme, cette division préviendra les goulets d'étranglement issus d'un seul fichier de base de données massif et ouvre la possibilité d'une synchronisation plus rapide et incrémentale avec le réseau, où un nœud peut télécharger sélectivement depuis les fichiers de base de données les plus récents.

Taille réduite des fichiers de base de données

Ensemble avec des mises à niveau de l'architecture de stockage avec plusieurs fichiers de base de données, nous avons complètement révisé le fichier de base de données lui-même en utilisant une approche de stockage de blocs améliorée avec une bien meilleure compression. Cela devrait apporter une amélioration estimée d'environ 30 % d'économies d'espace de stockage. Synchronisation plus rapide + stockage rationalisé = une expérience incroyable pour l'opérateur de nœud!

Vitesse améliorée lors de l'interrogation de la blockchain

Nous avons également travaillé sur un schéma d'indexation de transactions amélioré dans la base de données. En conséquence, des requêtes API spécifiques telles que l'extraction de toutes les transactions d'une adresse dans une certaine plage de blocs obtiendront désormais une réponse beaucoup plus rapide.

Mises à niveau de la gestion des nœuds et des journaux

Lorsque quelque chose de mauvais se produit dans un logiciel, les journaux peuvent vous sauver. Mais explorer les journaux d'un nœud blockchain (surtout pour un réseau rapide comme IoTeX, avec un bloc instantanément finalisé toutes les 5 secondes) peut être compliqué et chronophage. Extraire les données dont vous avez besoin pour comprendre les problèmes peut même être impossible simplement en raison de la taille des journaux. La Mainnet v1.2 corrige cela.

Le format des journaux de nœud prendra en charge ELK

Nous allons rendre la vie des opérateurs de nœuds plus facile que jamais grâce à des améliorations des formats des journaux, en les rendant spécifiquement compatibles avec la pile ELK! Cela vous permettra d'extraire les journaux de votre nœud avec l'agent “Beats” installé sur votre nœud et de les envoyer aux serveurs Elasticsearch + Kibana populaires pour analyser ces journaux, ainsi que de créer des visualisations pour la surveillance des nœuds, le dépannage, l'analyse de la sécurité, et bien plus encore. Le meilleur de tout, ELK est entièrement open-source offrant une grande flexibilité pour déployer/gérer ELK.

Plus de nœuds “Zombie”

Certains d'entre vous, en particulier les Délégués, ont peut-être remarqué que votre nœud ne parvenait pas à se synchroniser avec la blockchain après avoir perdu la connexion réseau, même pour une courte période. Pour les nœuds sans un robust système de surveillance en place, cela peut mener à ce que le nœud reste dans un état “zombie” où il fonctionne mais n'est pas capable de se synchroniser avec la blockchain même si la connexion est rétablie. Cela est particulièrement dangereux pour les Délégués, car le nœud peut arrêter de produire des blocs.

Pour éviter ce problème potentiel, nous avons amélioré le code de iotex-core de sorte que les nœuds puissent maintenant détecter de tels événements et se reconnecter immédiatement au réseau p2p après le rétablissement de la connexion Internet. Cela permettra aux nœuds de se resynchroniser immédiatement avec la blockchain, réduisant considérablement le risque d'interruptions du réseau.

Quelles sont les prochaines étapes?

Nous sommes ravis de donner vie à la Mainnet v1.2 et d'élever le réseau IoTeX au niveau supérieur. Depuis notre Mainnet v1.1 en août 2020, l'équipe IoTeX a travaillé assidûment pendant des mois sur la prochaine version de la Mainnet v1.2. En plus de la Mainnet v1.2, ceux qui suivent notre activité Github ont également constaté des mises à niveau constantes et significatives dans nos ioPay, iotexscan, Pebble Tracker, SDKs, et dépôts de staking — IoTeX est vraiment à pleine vitesse!

Le code de la Mainnet v1.2 sera publié le vendredi 30 avril pour que les Délégués puissent l'installer sur leurs nœuds. En tant que version de code de hard-fork, les Délégués auront jusqu'au 24 mai pour mettre à jour leurs nœuds — suivez le Twitter des développeurs d'IoTeX pour plus de mises à jour!

Dans une prochaine version de code, la Mainnet IoTeX prendra en charge la nouvelle version v0.6.x de l'EVM, qui permet une multitude de nouvelles capacités pour les développeurs, y compris des “mots clés” obligatoires pour rendre le code plus explicite/sécurisé, des améliorations de la sémantique et de la syntaxe du code, une construction try/catch pour la gestion des exceptions, une conversion explicite de l'adresse à l'adresse payable avec l'instruction payable(x), push() pour les tableaux de stockage dynamiques, et bien plus encore.

À propos d'IoTeX

Fondée en tant que plateforme open-source en 2017, IoTeX construit l'Internet des Choses Fiables, un écosystème ouvert où toutes les “choses” — humains, machines, entreprises et DApps — peuvent interagir avec confiance et vie privée. Soutenue par une équipe mondiale de plus de 30 grands chercheurs et ingénieurs, IoTeX combine blockchain, matériel sécurisé, et informatique confidentielle pour permettre aux dispositifs, réseaux, et économies IoT de prochaine génération. IoTeX va responsabiliser la future économie décentralisée en “connectant le monde physique, brique par brique”.

En savoir plus : Site Web | Twitter | Telegram | Medium | Reddit