Maison >Périphériques technologiques >Industrie informatique >Accélérer le cloud: l'investissement pour aller natif cloud

Accélérer le cloud: l'investissement pour aller natif cloud

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌original
2025-02-09 10:20:18116parcourir

Accelerating the Cloud: The Investment to Go Cloud Native

Cet article est la deuxième partie de la série «Accélération du cloud computing» d'Ampère Computing. Vous pouvez lire la première partie [ici] (remplacer par le lien de la partie 1 ici).

Il est beaucoup plus facile de migrer votre application vers la plate-forme informatique native Ampère Cloud que vous ne le pensez. En effet, la plupart des travaux de redéploiement des applications à un serveur basé sur ARM sont déjà effectués pour vous, ou simplement le recompiler.

En bref, parce que le processeur de cloud-natif d'Ampère utilise l'architecture de set d'instructions ARM (ISA), le logiciel exécuté sur ARM peut également fonctionner sur Ampère. Au cours des cinq dernières années, le support de la communauté open source à ARM a augmenté de façon exponentielle, avec une grande variété de nouveaux logiciels et services émergents. Par exemple, des applications telles que Redis, Nginx, Memcached, MySQL et Cassandra proposent déjà des versions basées sur les bras éprouvés.

Qu'est-ce que cela signifie pour les développeurs? La plupart des logiciels utilisés par les entreprises s'exécutent déjà dans le cloud, ou sont probablement prêts pour les environnements natifs cloud.

Système d'exploitation (OS): Presque tous les systèmes d'exploitation disponibles ont été portés sur ARM ISA et exécutés sur des cœurs à bras. En conséquence, le processeur natif Cloud d'Ampère prend en charge les versions publiées des principaux systèmes d'exploitation utilisés dans le cloud.

pour garantir davantage la fiabilité et les performances, les tests Ampère et valident l'image publique et les applications préemballées du système d'exploitation sur son processeur natif Ampère Cloud. De cette façon, les développeurs peuvent être sûrs que leurs applications peuvent s'exécuter de manière transparente sur Ampère.

Code préemballé: Habituellement, une grande partie d'une application est construite à l'aide de composants d'application préemballés. Des images publiques basées sur ARM de la plupart de ces applications (de MySQL, PostgreSQL, Cassandra, Nginx et Squid à une variété d'applications) ont été testées et vérifiées sur des processeurs natifs d'Ampère Cloud. Par conséquent, cette partie de la préparation d'une application pour une plate-forme informatique native du cloud est relativement simple: utilisez simplement le miroir basé sur le bras déjà fourni. Aucune réécriture de portage ou logiciel compliqué n'est requise.

Langue compilée: D'une manière générale, la plupart des problèmes clés qui se posent lors du redéploiement d'un serveur Web proviennent du code qui doit être compilé pour s'exécuter sur Ampère. Pour le code écrit dans des langues telles que Go, C et C, le processus de redéploiement nécessite une étape supplémentaire car les binaires existants sont conçus pour l'environnement x86. Étant donné que la grande majorité des langages de programmation sont disponibles sur ARM et X86, la plupart des problèmes de redéploiement doivent simplement exécuter le script de construction sur le nœud de construction AMPERE pour générer le bon binaire.

Interne / Personnalisation: les applications personnalisées peuvent être divisées en quatre types: interprétés, avancés, binaires et spécifiques au matériel.

  • Code explicatif: le code non compilé écrit dans des langages interprétés tels que Java ou Python, est très facile à redéployer sur les plates-formes de cloud-natives. Étant donné que le code est interprété et exécuté, il peut s'exécuter sur une plate-forme informatique native du cloud sans modifier le code. Au lieu de cela, le code s'exécute sur un interprète compilé pour ARM au lieu de x86. En règle générale, le redéployage d'un interprète pour un processeur de cloud-natif est un processus simple qui peut être effectué en quelques minutes si l'image n'existe pas.
  • Code avancé: il est également relativement facile de préparer le code écrit dans des langages de haut niveau tels que C / C pour les plates-formes natives cloud. Dans la plupart des cas, l'application doit simplement être recompilée pour ARM ISA. En règle générale, cela est géré en configurant simplement le compilateur pour armer au lieu de x86. Si des avertissements ou des erreurs se produisent pendant le processus de compilation, ces problèmes peuvent généralement être facilement résolus ou confirmer qu'ils ne sont pas des problèmes.
  • Fichiers binaires: Le problème de redéploiement le plus courant pour de nombreuses applications est l'utilisation de fichiers binaires. Un fichier binaire est du code (généralement une bibliothèque) inclus dans l'application. Cela peut inclure des produits qui ne sont disponibles que sous forme binaire, qui sont des dépendances pour votre application. Avant de créer votre application, vérifiez simplement les dépendances de votre code et assurez-vous que le binaire utilisé est basé sur ARM plutôt que basé sur X86.
  • Code spécifique au matériel: code écrit pour un processeur spécifique, ou code qui utilise une fonction de processeur spécifique à des fins de performances (comme une bibliothèque graphique), peut nécessiter un portage limité. Cela ne se produit que s'il n'y a pas de version ARM spécifique disponible. Quoi qu'il en soit, le processus de transplantation est généralement simple et peut être achevé en quelques heures au maximum.

Redolment du monde réel

Voyons ce qu'il faut pour redéployer l'application au processeur natif Ampère Cloud. Considérez Momento, qui se consacre à la fourniture de services qui gèrent les caches à grande échelle afin que les développeurs n'aient pas à les gérer eux-mêmes. Le cache sans serveur Momento est construit sur Pelikan, un moteur de mise en cache open source conçu à l'origine pour les besoins de cache spécifiques de Twitter. Pelikan a été complètement réécrit à Rust récemment. Momento veut redéployer Pelikan sur la machine virtuelle Tau T2A Hosted Ampère hébergée par Google.

Le déploiement rouge est rapide et transparent, sans changer de code pour obtenir le cache sans serveur Pelikan et Momento. De plus, l'équipe Momento a pu implémenter des optimisations simples (aucun ajustement de code requis), qui triple rapidement. Nous vous donnerons un aperçu détaillé des avantages de performance auxquels vous pouvez vous attendre dans la partie 4 de cette série.

Un autre exemple de redéploiement est le plesk. Le logiciel de Plesk permet aux gens de gérer leur infrastructure Web via un panneau de contrôle central. Lukas Hertig, vice-présidente principale du développement commercial de Plesk et de l'alliance stratégique, a décrit sa propre expérience dans le processus de redéploiement. "J'ai eu une idée folle au début, pour avoir une version du bras. Quelques semaines plus tard, mon équipe d'ingénierie est revenue et m'a dit:" Oh, ça marche maintenant. "

Plesk sert le champ SMB, et il n'est pas évident de choisir le Cloud Native. Mais Hertig a déclaré peu de temps après le redéploiement, «Nous avons dépassé 1 000 instances de bras. Bien sûr, la complexité du redéploiement de votre application sur une plate-forme informatique native du cloud dépend de l'endroit où vous obtenez le code. Cependant, d'une manière générale, l'investissement dans le redéploiement de la plupart des applications aux processeurs natifs cloud est minime, car 80 à 90% des applications doivent être recompilées.

Dans la troisième partie de cette série, nous explorerons davantage le processus de redéploiement natif du cloud.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn