IoTeX Mainnet v1.2 — Web3.js pour les outils Ethereum sur IoTeX et mises à jour de Node/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
Lors du premier trimestre 2021, nous avons vu un afflux d'annonces de la part d'IoTeX, y compris de nouvelles recherches, des partenariats et des initiatives écosystémiques. Mais cela ne fait qu'effleurer la surface de ce sur quoi l'équipe principale d'IoTeX a été occupée. En coulisses, nous avons continué à développer agressivement pour améliorer le "cœur" du réseau, iotex-core, le protocole blockchain exécuté par tous les Délégués et les nœuds complets qui donnent vie à l'ensemble du réseau IoTeX.
Dans ce blog, nous partageons les incroyables fonctionnalités et outils qui ont été intégré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 à jour 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 avec 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 afin de construire/étendre des produits sur la plateforme IoTeX, nous introduisons Babel, un wrapper d'API de nœud Ethereum qui permet aux utilisateurs/bâtisseurs 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 !
Web3.js est un ensemble 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 en utilisant les outils Ethereum sur le réseau IoTeX.
Mises à jour 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'exploiter un nœud complet, voire un nœud de Délégué produit bloc, sans avoir à dépenser des montants exorbitants en matériel et en stockage. La Mainnet v1.2 étendra notre engagement pour une participation ouverte avec une variété de mises à jour 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 consacré un temps et des efforts considérables à rationaliser notre base de données blockchain — avec la Mainnet v1.2, iotex-core va maintenant diviser la base de données en plusieurs fichiers de base de données avec chacun contenant 1 000 000 de blocs. À long terme, cette division préviendra les goulets d'étranglement résultant d'un seul fichier de base de données massif et ouvre la possibilité d'une synchronisation plus rapide et incrémentielle avec le réseau, où un nœud peut télécharger de manière sélective à partir des fichiers de base de données les plus récents.
Taille de fichier de base de données réduite
Avec les mises à jour de l'architecture de stockage avec plusieurs fichiers de base de données, nous avons remanié le fichier de base de données lui-même en utilisant une approche de stockage de blocs améliorée avec une compression bien meilleure. Cela entraînera une amélioration estimée d'environ 30 % d'économies d'espace de stockage. Synchronisation plus rapide + stockage rationalisé = une expérience incroyable pour les opérateurs de nœuds !
Amélioration de la vitesse lors de la requête de la blockchain
Nous avons également travaillé sur un schéma d'indexation des transactions amélioré dans la base de données. En conséquence, des requêtes API spécifiques telles que récupérer toutes les transactions d'une adresse dans une certaine plage de blocs obtiendront désormais une réponse beaucoup plus rapide.

Mises à jour de la gestion des nœuds & des journaux
Quand 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 finalisé instantanément 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 faciliterons la vie des opérateurs de nœuds comme jamais auparavant grâce à des améliorations des formats de journaux, 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 créer des visualisations pour la surveillance des nœuds, le dépannage, l'analyse de sécurité, et bien plus encore. Mieux encore, ELK est entièrement open-source offrant une grande flexibilité pour déployer/gérer ELK.

Fini les nœuds “Zombie”
Certains d'entre vous, surtout les Délégués, ont peut-être remarqué que votre nœud a échoué à 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 système de surveillance robuste en place, cela peut entraîner le fait que le nœud reste dans un état de “zombie” où il fonctionne mais n'est pas en mesure 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 afin que les nœuds puissent désormais détecter de tels événements et se reconnecter immédiatement au réseau P2P après que la connexion Internet est rétablie. Cela permettra aux nœuds de se resynchroniser immédiatement avec la blockchain, réduisant considérablement le risque d'interruptions réseau.
Que se passe-t-il ensuite ?
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é d'arrache-pied pendant des mois sur notre prochaine version de la Mainnet v1.2. En plus de la Mainnet v1.2, ceux qui suivent notre activité sur Github ont également vu des mises à jour constantes et significatives à travers notre ioPay, iotexscan, Pebble Tracker, SDKs, et repos de staking — IoTeX fonctionne réellement à plein régime !
Le code de la Mainnet v1.2 sera publié le vendredi 30 avril pour que les Délégués l'installent sur leurs nœuds. En tant que publication 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 IoTeX pour plus de mises à jour !
Dans une prochaine publication de code, la Mainnet IoTeX prend 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 des sémantiques 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é en tant que plateforme open-source en 2017, IoTeX construit l'Internet des Choses de Confiance, un écosystème ouvert où toutes les "choses" — humains, machines, entreprises, et DApps — peuvent interagir avec confiance et confidentialité. Soutenu par une équipe mondiale de plus de 30 scientifiques et ingénieurs de recherche de premier plan, IoTeX combine blockchain, matériel sécurisé et informatique confidentielle pour permettre les appareils, réseaux et économies IoT de prochaine génération. IoTeX va permettre à la future économie décentralisée de "connecter le monde physique, bloc par bloc".
Pour en savoir plus : Site Web | Twitter | Telegram | Medium | Reddit