Écrit par : KAUTUK, développeur Stackr Compilé par : Luffy, Foresight News
Commencer un article Rollup avec quelque chose comme « Qu'est-ce qu'un Rollup » ou « Pourquoi avons-nous besoin d'un Rollup », c'est comme tuer Oncle Ben ou tirer sur la mère et le père de Wayne à chaque itération des films Spider-Man et Batman. Comme papa. Si vous lisez cet article, je suppose que vous avez déjà une compréhension de base des questions ci-dessus. Ici, nous évitons le débat entre la chaîne d'application et le Rollup d'application et passons directement au sujet.
L'essor des cumuls spécifiques à une application****Les cumuls universels sont frustrants
Universal Rollup est comme le système scolaire en Inde (je suis sûr qu'ils ont des caractéristiques similaires à celles d'autres systèmes scolaires, mais je n'en ai qu'une expérience directe).
Les athlètes, les chanteurs, les mathématiciens, les penseurs et les économistes doivent tous suivre le même processus pour obtenir la note de passage. Le système n’est pas « biaisé » en faveur d’un groupe en particulier, mais il n’est pas non plus « équitable » pour tout le monde. Mais bon, on s'est fait amis ! (Ce sera important plus tard).
De même, pour les applications sur un Rollup universel, le goulot d'étranglement est l'environnement d'exécution lui-même, puisque le Rollup ne peut pas répondre aux besoins de chaque application individuellement. Chaque application peut nécessiter un type d'optimisation différent et toute amélioration personnalisée peut ne pas être justifiée pour elles. Cependant, si vous ne faites qu'expérimenter et souhaitez avoir une idée approximative, c'est l'option la plus pratique. De plus, pour certaines applications comme certains étudiants moyens, cela pourrait être la bonne solution !
Le cumul spécifique à l'application prête à confusion
Eh bien, mon enfant est trop sportif pour aller à l'école publique et il a besoin d'une formation spéciale. Dois-je l’envoyer dans une école de sport ou dois-je embaucher un entraîneur personnel…
Le rollup est difficile à classer clairement****Jouons à un jeu
Vous trouverez ci-dessous 8 cumuls d’applications spécifiques. Cependant, 1 élément de chaque groupe n’appartient pas vraiment à ce groupe. Pouvez-vous dire lequel il s'agit ?
La spécificité des applications devient un terme déroutant. Il existe des Rollups d'application spécifiques qui permettent de déployer des contrats par-dessus eux-mêmes ; il existe également des Rollups d'application spécifiques qui permettent le déploiement de contrats car leurs machines virtuelles le prennent en charge, mais il y aura certaines restrictions ; Ils ont des machines virtuelles fermées ou pas de machines virtuelles. machines du tout et ne prennent pas en charge d’autres types de développement.
Est-il juste de les classer ensemble ?
Réponses à l'exercice ci-dessus :
Groupe 1 : Celo est une option étrange car elle permet à d'autres développeurs de créer des applications que d'autres développeurs peuvent utiliser directement. Les autres projets à considérer dans le groupe 1 sont Fuel-v1, Aevo, RhinoFi, etc.
Groupe 2 : Loopring est un choix étrange car il s'agit du seul Rollup spécialement conçu qui fonctionne immédiatement, tandis que les autres sont des réseaux optimisés pour des fonctionnalités spécifiques telles que la confidentialité, les NFT et le TPS pour les applications qui y sont déployées. Ces fonctions peuvent être hérité. D'autres projets pouvant être pris en compte dans le groupe 2 sont Kinto, Kroma, Public Goods Network, etc.
Problèmes de déploiement de contrats dans des machines virtuelles générales modifiées
Ces machines virtuelles sur lesquelles vous déployez des contrats intelligents ne sont rien de plus que des machines à états complètes de Turing. Les contrats que vous déployez dessus ne modifient que l'état lui-même, cela n'affecte pas vraiment les règles de transition d'état de base de la VM. Le rollup est essentiellement une machine virtuelle sur laquelle repose votre logique métier.
Votre logique métier est distincte des fonctions de transition d'état de Rollup.
J'appelle également cela le « paradigme de contrat intelligent pour la création d'applications » car vous déployez une logique supplémentaire au-dessus d'une machine virtuelle. Le rollup n'est pas "directement" concerné par la preuve de la logique de l'application. La VM est le Rollup, pas votre application.
Bien entendu, vous êtes l'unique propriétaire de la machine virtuelle, votre application est le seul citoyen et vous pouvez continuellement améliorer la base elle-même pour la rendre adaptée à votre application. Vous pouvez continuer à améliorer la fonction de transition d'état (STF) et ajouter/supprimer des opcodes pour améliorer les performances de l'application, mais l'application reste indépendante et limitée par la VM elle-même.
Comme la Lamborghini Urus tirant une Lamborghini Huracan
Une application distincte sur une application spécifique Rollup peut faire mieux. Et si vous continuiez à améliorer le STF afin que sa portée devienne de plus en plus petite pour s'adapter à la logique métier de votre application ? Finalement, à mesure que vous devenez plus fort, le STF convergera vers un point où la logique métier et le STF se chevauchent, auquel cas vous réaliserez... oh, attendez une minute !
Le Micro-Rollup est né
Par conséquent, le Micro-Rollup n'est rien de plus qu'un Rollup dans lequel la fonction de transition d'état de l'application est la logique métier elle-même.
L'application devient un Rollup, l'état peut être géré de toutes les manières possibles dans n'importe quel environnement d'exécution et les règles de transition d'état peuvent être appliquées directement dans le runtime de l'application. L'application peut être personnalisée sans aucune restriction. Les preuves sont liées à votre logique métier plutôt qu'à la machine, ce qui rend votre application légère.
Micro-Rollup n'est soumis à aucune restriction en termes d'expérience de développement. Vous pouvez les créer à l'aide de tous les outils de votre choix, car ils ne se limitent pas aux machines virtuelles. Ils ressemblent à des applications backend web2, mais ils publient périodiquement des preuves de transactions vers L1. Je pense que ce sera un facteur majeur qui incitera les développeurs Web2 à se lancer dans l'espace Web3.
En fait, un meilleur exemple serait le Rimac Nevera car il est plus rapide et électrique donc probablement moins cher à faire fonctionner.
Le seul inconvénient de cette approche est le mécanisme de preuve personnalisé pour chaque application différente. Si la logique de l'application peut être compilée dans un intermédiaire commun, prouver l'intermédiaire public éliminerait la difficulté de prouver chaque application individuellement, mais je pense personnellement qu'il s'agit simplement d'un compromis entre efficacité et développement plus rapide.
Il existe des moyens de résoudre ce problème sans utiliser de couche d'exécution impliquant une machine virtuelle. Et s’il existait un outil permettant aux développeurs de faire cela ?
C'est la mission de Stackr Labs : nous construisons un framework Micro-Rollup et un SDK afin que chacun puisse créer ses applications dans la langue de son choix sans restrictions, tout comme la création d'applications backend web2. La procédure est la même. Rendre le développement de Micro-Rollup aussi simple que la rédaction et le déploiement de contrats intelligents, sans parler de la modularité, augmente la capacité des développeurs à choisir n'importe quel écosystème.
** Alors, le Micro-Rollup est-il réel ? **
Cela a toujours été aussi réel que Rollup lui-même.
Des applications telles que Loopring, dYdX et Fuel-v1 existent déjà ou existent depuis longtemps. Il s'agit de rollups hautement optimisés avec une logique personnalisée exécutée spécifiquement pour servir leur cas d'utilisation. La première application spécifique Rollup que je connais et sur laquelle j'ai personnellement travaillé et qui n'est pas basée sur une machine virtuelle est Hubble Optimistic Rollup, un projet vieux de 3 ans qui servait autrefois d'infrastructure de base pour le jeton Worldcoin.
Il est désormais de plus en plus important de différencier ces termes.
Les cas d’utilisation des Micro-Rollups sont infinis :
Produits de consommation tels que les jeux, les échanges et les marchés NFT
La chaîne d'applications peut être convertie en cumul d'applications
Vous pouvez même créer de nouveaux types de VM prenant en charge des cas d'utilisation uniques, ouvrant ainsi la porte à l'innovation des VM.
en conclusion
L'arborescence de structure que j'ai montrée plus tôt manquait des éléments pour la machine à états personnalisée.
De plus, le déploiement d'un protocole unique à l'aide d'un cumul basé sur VM ou EVM n'est pas efficace pour les applications autonomes. Il convient aux applications qui disposent déjà d'un grand nombre de contrats intelligents et exécutent leurs protocoles sur une chaîne de type EVM, mais pas aux « applications qui en veulent plus » et souhaitent se débarrasser des limitations des VM.
Donc si nous taillons l’arbre, l’arbre final ressemblera à ceci. C'est pourquoi je pense que App-Rollup, Micro-Rollup ou RollApp s'appelleront App dans un avenir proche.
Par conséquent, Micro Rollup = App sur Rollup App en tant que Rollup.
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
Le Micro-Rollup est-il la prochaine vague ?
Écrit par : KAUTUK, développeur Stackr Compilé par : Luffy, Foresight News
Commencer un article Rollup avec quelque chose comme « Qu'est-ce qu'un Rollup » ou « Pourquoi avons-nous besoin d'un Rollup », c'est comme tuer Oncle Ben ou tirer sur la mère et le père de Wayne à chaque itération des films Spider-Man et Batman. Comme papa. Si vous lisez cet article, je suppose que vous avez déjà une compréhension de base des questions ci-dessus. Ici, nous évitons le débat entre la chaîne d'application et le Rollup d'application et passons directement au sujet.
L'essor des cumuls spécifiques à une application****Les cumuls universels sont frustrants
Universal Rollup est comme le système scolaire en Inde (je suis sûr qu'ils ont des caractéristiques similaires à celles d'autres systèmes scolaires, mais je n'en ai qu'une expérience directe).
Les athlètes, les chanteurs, les mathématiciens, les penseurs et les économistes doivent tous suivre le même processus pour obtenir la note de passage. Le système n’est pas « biaisé » en faveur d’un groupe en particulier, mais il n’est pas non plus « équitable » pour tout le monde. Mais bon, on s'est fait amis ! (Ce sera important plus tard).
De même, pour les applications sur un Rollup universel, le goulot d'étranglement est l'environnement d'exécution lui-même, puisque le Rollup ne peut pas répondre aux besoins de chaque application individuellement. Chaque application peut nécessiter un type d'optimisation différent et toute amélioration personnalisée peut ne pas être justifiée pour elles. Cependant, si vous ne faites qu'expérimenter et souhaitez avoir une idée approximative, c'est l'option la plus pratique. De plus, pour certaines applications comme certains étudiants moyens, cela pourrait être la bonne solution !
Le cumul spécifique à l'application prête à confusion
Eh bien, mon enfant est trop sportif pour aller à l'école publique et il a besoin d'une formation spéciale. Dois-je l’envoyer dans une école de sport ou dois-je embaucher un entraîneur personnel…
Le rollup est difficile à classer clairement****Jouons à un jeu
Vous trouverez ci-dessous 8 cumuls d’applications spécifiques. Cependant, 1 élément de chaque groupe n’appartient pas vraiment à ce groupe. Pouvez-vous dire lequel il s'agit ?
La spécificité des applications devient un terme déroutant. Il existe des Rollups d'application spécifiques qui permettent de déployer des contrats par-dessus eux-mêmes ; il existe également des Rollups d'application spécifiques qui permettent le déploiement de contrats car leurs machines virtuelles le prennent en charge, mais il y aura certaines restrictions ; Ils ont des machines virtuelles fermées ou pas de machines virtuelles. machines du tout et ne prennent pas en charge d’autres types de développement.
Est-il juste de les classer ensemble ?
Réponses à l'exercice ci-dessus :
Groupe 1 : Celo est une option étrange car elle permet à d'autres développeurs de créer des applications que d'autres développeurs peuvent utiliser directement. Les autres projets à considérer dans le groupe 1 sont Fuel-v1, Aevo, RhinoFi, etc.
Groupe 2 : Loopring est un choix étrange car il s'agit du seul Rollup spécialement conçu qui fonctionne immédiatement, tandis que les autres sont des réseaux optimisés pour des fonctionnalités spécifiques telles que la confidentialité, les NFT et le TPS pour les applications qui y sont déployées. Ces fonctions peuvent être hérité. D'autres projets pouvant être pris en compte dans le groupe 2 sont Kinto, Kroma, Public Goods Network, etc.
Problèmes de déploiement de contrats dans des machines virtuelles générales modifiées
Ces machines virtuelles sur lesquelles vous déployez des contrats intelligents ne sont rien de plus que des machines à états complètes de Turing. Les contrats que vous déployez dessus ne modifient que l'état lui-même, cela n'affecte pas vraiment les règles de transition d'état de base de la VM. Le rollup est essentiellement une machine virtuelle sur laquelle repose votre logique métier.
Votre logique métier est distincte des fonctions de transition d'état de Rollup.
J'appelle également cela le « paradigme de contrat intelligent pour la création d'applications » car vous déployez une logique supplémentaire au-dessus d'une machine virtuelle. Le rollup n'est pas "directement" concerné par la preuve de la logique de l'application. La VM est le Rollup, pas votre application.
Bien entendu, vous êtes l'unique propriétaire de la machine virtuelle, votre application est le seul citoyen et vous pouvez continuellement améliorer la base elle-même pour la rendre adaptée à votre application. Vous pouvez continuer à améliorer la fonction de transition d'état (STF) et ajouter/supprimer des opcodes pour améliorer les performances de l'application, mais l'application reste indépendante et limitée par la VM elle-même.
Comme la Lamborghini Urus tirant une Lamborghini Huracan
Une application distincte sur une application spécifique Rollup peut faire mieux. Et si vous continuiez à améliorer le STF afin que sa portée devienne de plus en plus petite pour s'adapter à la logique métier de votre application ? Finalement, à mesure que vous devenez plus fort, le STF convergera vers un point où la logique métier et le STF se chevauchent, auquel cas vous réaliserez... oh, attendez une minute !
Le Micro-Rollup est né
Par conséquent, le Micro-Rollup n'est rien de plus qu'un Rollup dans lequel la fonction de transition d'état de l'application est la logique métier elle-même.
L'application devient un Rollup, l'état peut être géré de toutes les manières possibles dans n'importe quel environnement d'exécution et les règles de transition d'état peuvent être appliquées directement dans le runtime de l'application. L'application peut être personnalisée sans aucune restriction. Les preuves sont liées à votre logique métier plutôt qu'à la machine, ce qui rend votre application légère.
Micro-Rollup n'est soumis à aucune restriction en termes d'expérience de développement. Vous pouvez les créer à l'aide de tous les outils de votre choix, car ils ne se limitent pas aux machines virtuelles. Ils ressemblent à des applications backend web2, mais ils publient périodiquement des preuves de transactions vers L1. Je pense que ce sera un facteur majeur qui incitera les développeurs Web2 à se lancer dans l'espace Web3.
En fait, un meilleur exemple serait le Rimac Nevera car il est plus rapide et électrique donc probablement moins cher à faire fonctionner.
Le seul inconvénient de cette approche est le mécanisme de preuve personnalisé pour chaque application différente. Si la logique de l'application peut être compilée dans un intermédiaire commun, prouver l'intermédiaire public éliminerait la difficulté de prouver chaque application individuellement, mais je pense personnellement qu'il s'agit simplement d'un compromis entre efficacité et développement plus rapide.
Il existe des moyens de résoudre ce problème sans utiliser de couche d'exécution impliquant une machine virtuelle. Et s’il existait un outil permettant aux développeurs de faire cela ?
C'est la mission de Stackr Labs : nous construisons un framework Micro-Rollup et un SDK afin que chacun puisse créer ses applications dans la langue de son choix sans restrictions, tout comme la création d'applications backend web2. La procédure est la même. Rendre le développement de Micro-Rollup aussi simple que la rédaction et le déploiement de contrats intelligents, sans parler de la modularité, augmente la capacité des développeurs à choisir n'importe quel écosystème.
** Alors, le Micro-Rollup est-il réel ? **
Cela a toujours été aussi réel que Rollup lui-même.
Des applications telles que Loopring, dYdX et Fuel-v1 existent déjà ou existent depuis longtemps. Il s'agit de rollups hautement optimisés avec une logique personnalisée exécutée spécifiquement pour servir leur cas d'utilisation. La première application spécifique Rollup que je connais et sur laquelle j'ai personnellement travaillé et qui n'est pas basée sur une machine virtuelle est Hubble Optimistic Rollup, un projet vieux de 3 ans qui servait autrefois d'infrastructure de base pour le jeton Worldcoin.
Il est désormais de plus en plus important de différencier ces termes.
Les cas d’utilisation des Micro-Rollups sont infinis :
en conclusion
L'arborescence de structure que j'ai montrée plus tôt manquait des éléments pour la machine à états personnalisée.
De plus, le déploiement d'un protocole unique à l'aide d'un cumul basé sur VM ou EVM n'est pas efficace pour les applications autonomes. Il convient aux applications qui disposent déjà d'un grand nombre de contrats intelligents et exécutent leurs protocoles sur une chaîne de type EVM, mais pas aux « applications qui en veulent plus » et souhaitent se débarrasser des limitations des VM.
Donc si nous taillons l’arbre, l’arbre final ressemblera à ceci. C'est pourquoi je pense que App-Rollup, Micro-Rollup ou RollApp s'appelleront App dans un avenir proche.
Par conséquent, Micro Rollup = App sur Rollup App en tant que Rollup.