Le sans serveur a pris d'assaut le monde du cloud computing, connaissant une croissance massive au cours des dernières années et des prévisions très positives pour l'avenir, le marché devant croître à un taux composé de plus de 20 % d'ici 2028, selon de récentes prévisions de taux de croissance annuel. .

Essentiellement, l'architecture sans serveur libère tout le potentiel de la technologie basée sur le cloud grâce à un logiciel d'automatisation informatique, permettant aux entreprises de stimuler leur croissance au lieu de consacrer du temps et des ressources à la gestion de l'infrastructure informatique.

Bien que cela semble prometteur, les plates-formes cloud sans serveur restent apatrides et centralisées. Les applications doivent donc remédier à cette lacune en matière de stockage de l'état et éviter d'être soumises au verrouillage du fournisseur.

Les ordinateurs Internet offrent un niveau supplémentaire de sécurité, de contrôle et de confiance, tout cela grâce à la décentralisation, sans qu'aucune partie ne contrôle le matériel ou les logiciels. De plus, les ordinateurs Internet sont conçus pour fonctionner de manière dynamique.

Dans cet article, nous décrivons comment les blockchains informatiques Internet peuvent fournir des capacités informatiques sans serveur avec deux avantages supplémentaires importants : la décentralisation et l'état.

Qu’est-ce que le sans serveur ?

Le sans serveur est un nouveau paradigme de cloud computing qui permet des cycles de développement rapides et flexibles sans avoir à prendre en compte l'infrastructure sous-jacente (approvisionnement et mise à l'échelle des machines virtuelles appropriées, installation et maintenance des logiciels et des frameworks), réduisant ainsi les coûts opérationnels globaux.

Le sans serveur se présente sous de nombreuses formes, la plus pertinente dans notre cas est les fonctions en tant que service (FaaS), où (les grandes bases de code sont divisées en) de petites fonctions avec des durées d'exécution très courtes (de quelques millisecondes à quelques minutes) et les fonctions sont utilisées au fur et à mesure de l'utilisation. Facturé (c'est-à-dire basé sur la durée d'exécution) plus des frais fixes par appel, la dernière caractéristique importante à mentionner est l'excellente évolutivité pour lancer jusqu'à des milliers d'instances de la même fonction dans un court laps de temps.

L'informatique Internet en tant que plate-forme sans serveur

En jetant un bref coup d'œil à l'architecture d'Internet Computer, vous remarquerez facilement qu'il offre des fonctionnalités sans serveur et même des avantages supplémentaires.

Aujourd'hui, les fonctions FaaS sont conditionnées sous forme de conteneurs ou simplement sous forme de code (Python, Javascript, Java, Rust, etc.) et fournissent un point de terminaison unique qui peut être appelé directement par des utilisateurs externes ou d'autres fonctions.

Les contrats intelligents de conteneur sur les ordinateurs Internet peuvent également être programmés dans divers langages, notamment Rust, Motoko, JavaScript ou Python, et peuvent exposer plusieurs points de terminaison offrant des fonctionnalités différentes pour chaque conteneur.

Le tableau suivant résume les principales fonctionnalités sans serveur et leurs ordinateurs Internet correspondants, ainsi que les avantages de la blockchain par rapport au sans serveur basé sur le cloud :

图片
Tableau 1. Principales fonctionnalités sans serveur par rapport aux fonctionnalités des ordinateurs Internet, la décentralisation, l'état et la confiance étant des avantages supplémentaires des ordinateurs Internet.

Comme vous pouvez le voir dans le tableau, les ordinateurs Internet répondent à toutes les exigences d'un environnement sans serveur. Les développeurs ne le savent peut-être pas, mais ils exécutent déjà du code sans serveur, comme le montre nos recherches, avec presque autant d'efficacité que ce que proposent les fournisseurs de cloud traditionnels. même.

Dans certaines dimensions (comme la mémoire), les ordinateurs Internet dépassent même les capacités fournies par les fournisseurs de cloud traditionnels. Cependant, les capacités les plus importantes que nous souhaitons souligner pour les développeurs sont : avec état et décentralisé, sans serveur traditionnel. Le cloud ne fournit pas ces deux fonctionnalités.

Dans le tableau 2-3, nous invitons le lecteur averti à approfondir les aspects techniques qui font de l'ordinateur Internet une plate-forme sans serveur compétitive. Il est important de noter ici que l'ordinateur Internet dispose de deux types d'exécution de contrats intelligents : le mode de mise à jour et le mode de mise à jour. En mode requête, le premier représente des appels avec état, tandis que le second est sans état, tout comme l'informatique générale sans serveur.

Tableau 2. Fonctionnalités importantes pour la création d'applications sans serveur à grande échelle L'état est un autre avantage des ordinateurs Internet.
图片
Tableau 3. Analyse approfondie de la plateforme des fonctionnalités liées au runtime.

L'état persistant après l'exécution d'une fonction est une fonctionnalité très recherchée dans le monde sans serveur/FaaS, et elle est très difficile à mettre en œuvre car elle entre souvent en conflit avec le type d'évolutivité transparente actuellement disponible dans le cloud.

Heureusement, les ordinateurs Internet ont été conçus dès le départ dans un souci d'état et offrent aux développeurs cette fonctionnalité sans nécessiter aucune intervention manuelle, telle que la sauvegarde des données sur une couche de stockage externe ou une base de données, de sorte que toutes les variables ou les données seront a automatiquement persisté après avoir appelé le contrat intelligent sur l'ordinateur Internet.

La décentralisation est une autre caractéristique importante qui est souvent négligée. Les produits modernes sans serveur sont actuellement servis par plusieurs grands cloud centralisés, ce qui conduit à un verrouillage du fournisseur, où le code et les données du développeur sont aussi sécurisés que leur fournisseur et sont vulnérables aux perturbations géographiques ou. de simples changements de politique des fournisseurs.

Les ordinateurs Internet sont complètement décentralisés, avec des machines à nœuds fonctionnant dans différents emplacements géographiques et fonctionnant sous de solides garanties consensuelles qui peuvent même tolérer des pannes byzantines (malveillantes).

图片

Ordinateurs Internet et plates-formes sans serveur traditionnelles

Pour évaluer les performances de la blockchain Internet Computer en termes de cloud sans serveur, nous avons effectué une analyse de référence gourmande en CPU sur l'ordinateur Internet et l'une des 3 meilleures plates-formes sans serveur. Pour les entrées plus petites, l'ordinateur Internet était meilleur que l'ordinateur sans serveur traditionnel. Le serveur est plus rapide, et pour les entrées plus volumineuses, il est seulement deux fois moins rapide que le serveur traditionnel (voir les résultats ci-dessous).

C'est très encourageant et montre que, même s'il reste encore un long chemin à parcourir, l'informatique sur Internet gagne du terrain en termes de performances par rapport aux cloud centralisés traditionnels. Pour plus de détails, nous vous encourageons à consulter nos récents articles évalués par des pairs du prestigieux. Conférence USENIX ATC :

  • usenix.org/system/files/atc23-arutyunyan.pdf

图片
Figure 1. Accélération par rapport aux 3 principales plates-formes sans serveur

Améliorer les performances

Des fonctionnalités intégrées supplémentaires, telles que la décentralisation et l'état, entraînent une baisse des performances des ordinateurs Internet lors de la gestion de charges de travail importantes (voir Figure 2). Bien que ces fonctionnalités soient puissantes et importantes, elles affaiblissent également les performances brutes.

图片
Figure 2. Décentralisation et surcharge dynamique des ordinateurs Internet

Les ingénieurs et les chercheurs de DFINITY continueront de rechercher et d'explorer des moyens d'améliorer les performances des ordinateurs sur Internet. Certains domaines d'amélioration pourraient consister à accroître le parallélisme ou à remplacer la couche de stockage actuelle par une approche d'arbre de fusion structurée en journaux pour raccourcir les délais de point de contrôle.

Libérer toute la puissance des requêtes composées pour prendre en charge des applications plus complexes aura également un impact positif sur les performances. Les travaux ont déjà commencé sur les requêtes composées pour permettre la mise à l'échelle horizontale des dapp et simplifier le code client, permettant l'invocation de requêtes sur plusieurs sous-réseaux et l'exécution de réplications. sont en cours.

Créez des applications sans serveur sur des ordinateurs Internet

图片

Exécuter Enterprise Pilot sur des ordinateurs Internet

Contenu IC qui vous intéresse

Progrès technologique | Informations sur le projet |

Collectez et suivez IC Binance Channel

Restez à jour avec les dernières informations