{"id":55881,"date":"2020-01-31T00:00:00","date_gmt":"2020-01-30T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij"},"modified":"2020-02-18T14:04:02","modified_gmt":"2020-02-18T11:04:02","slug":"sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij","title":{"rendered":"Conseils et sources d'information pour cr\u00e9er des applications sans serveur","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Conseils et sources d&#039;information pour cr\u00e9er des applications sans serveur\" src=\"\/wp-content\/uploads\/2020\/01\/a29ca83a52a809d148aebbd6821d4ef9.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nBien que les technologies sans serveur connaissent une popularit\u00e9 croissante ces derni\u00e8res ann\u00e9es, beaucoup de malentendus et d'inqui\u00e9tudes y sont encore associ\u00e9s. La d\u00e9pendance \u00e0 un fournisseur, les outils, la gestion des co\u00fbts, le d\u00e9marrage \u00e0 froid, la surveillance et le cycle de d\u00e9veloppement - tous ces sujets sont activement discut\u00e9s lorsqu'il s'agit de technologies sans serveur. Dans cet article, nous allons examiner certains des sujets mentionn\u00e9s et partager des conseils ainsi que des liens vers des sources d'informations utiles qui permettront aux d\u00e9butants de cr\u00e9er des applications sans serveur puissantes, flexibles et \u00e9conomiques.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Malentendus concernant les technologies sans serveur<\/h2>\n<p>\nBeaucoup pensent que l'absence de serveur et le traitement des donn\u00e9es hors serveur (<noindex><a rel=\"nofollow\" href=\"https:\/\/martinfowler.com\/articles\/serverless.html#unpacking-faas\">Functions as a Service<\/a><\/noindex>, FaaS) sont pratiquement \u00e9quivalents. Cela signifie que la diff\u00e9rence n'est pas tr\u00e8s grande et qu'il vaut la peine d'adopter l'innovation. Bien qu'AWS Lambda ait \u00e9t\u00e9 l'une des \u00ab \u00e9toiles \u00bb de l'apog\u00e9e des technologies sans serveur et l'un des \u00e9l\u00e9ments les plus populaires de l'architecture sans serveur, cette architecture repr\u00e9sente quelque chose de plus que le FaaS.<\/p>\n<p>Le principe fondamental des technologies sans serveur est que vous n'avez pas \u00e0 vous soucier de la gestion et de la mise \u00e0 l'\u00e9chelle de l'infrastructure, vous ne payez que pour ce que vous utilisez. De nombreux services r\u00e9pondent \u00e0 ces crit\u00e8res - AWS DynamoDB, S3, SNS ou SQS, Graphcool, Auth0, Now, Netlify, Firebase et bien d'autres. En r\u00e9sum\u00e9, l'absence de serveur implique l'utilisation de toutes les capacit\u00e9s du cloud computing sans avoir \u00e0 g\u00e9rer l'infrastructure et \u00e0 l'optimiser pour la mise \u00e0 l'\u00e9chelle. Cela signifie \u00e9galement que la s\u00e9curit\u00e9 au niveau de l'infrastructure n'est plus votre pr\u00e9occupation, ce qui est un \u00e9norme avantage compte tenu de la difficult\u00e9 et de la complexit\u00e9 de respecter les normes de s\u00e9curit\u00e9. Enfin, vous n'avez pas besoin d'acheter l'infrastructure qui vous est mise \u00e0 disposition.<\/p>\n<p>L'absence de serveur peut \u00eatre consid\u00e9r\u00e9e comme un \u00ab \u00e9tat d'esprit \u00bb : une certaine mentalit\u00e9 lors de la conception de solutions. \u00c9vitez les approches n\u00e9cessitant l'entretien d'une infrastructure quelconque. Avec une approche sans serveur, nous consacrons notre temps \u00e0 r\u00e9soudre des probl\u00e8mes qui ont un impact direct sur le projet et qui apportent des avantages \u00e0 nos utilisateurs : nous construisons une logique commerciale robuste, d\u00e9veloppons des interfaces utilisateur et concevons des API adaptatives et fiables.<\/p>\n<p>Par exemple, si nous pouvons \u00e9viter la gestion et le support d'une plateforme de recherche en texte libre, c'est exactement ce que nous ferons. Cette approche de l'assemblage d'applications peut consid\u00e9rablement acc\u00e9l\u00e9rer la mise sur le march\u00e9, car vous n'avez plus besoin de penser \u00e0 la gestion d'une infrastructure complexe. Lib\u00e9rez-vous des responsabilit\u00e9s et des co\u00fbts associ\u00e9s \u00e0 la gestion de l'infrastructure et concentrez-vous sur la cr\u00e9ation d'applications et de services dont vos clients ont besoin. Patrick Debois a qualifi\u00e9 cette approche <noindex><a rel=\"nofollow\" href=\"https:\/\/www.slideshare.net\/jedi4ever\/from-serverless-to-service-full-how-the-role-of-devops-is-evolving?ref=https:\/\/twitter.com\/i\/cards\/tfw\/v1\/736144044112384000?cardname=player&amp;earned=true&amp;lang=en&amp;card_height=130\">\u2018servicefull\u2019<\/a><\/noindex>, ce terme est accept\u00e9 dans la communaut\u00e9 sans serveur. Les fonctions doivent \u00eatre consid\u00e9r\u00e9es comme un lien entre les services sous forme de modules d\u00e9ployables (plut\u00f4t que de d\u00e9ployer toute une biblioth\u00e8que ou une application web). Cela offre une granularit\u00e9 incroyable dans la gestion du d\u00e9ploiement et des modifications de l'application. Si vous ne pouvez pas d\u00e9ployer des fonctions de cette mani\u00e8re, cela peut indiquer que les fonctions accomplissent trop de t\u00e2ches et doivent \u00eatre refactoris\u00e9es.<\/p>\n<p>Certain people are concerned about vendor dependency when developing cloud applications. The same goes for serverless technologies, and it's unlikely this is a misconception. Based on our experience, creating serverless applications on AWS combined with the ability of AWS Lambda to integrate with other AWS services \u2014 all of this partly shapes the advantages of serverless architectures. It\u2019s a good example of synergy, where the outcome of the combination is greater than just the sum of its parts. Trying to avoid vendor dependency may lead to even greater issues. When working with containers, it\u2019s easier to manage your own level of abstraction between cloud providers. However, when it comes to serverless solutions, the effort won\u2019t pay off, especially if economic efficiency is considered from the start. Make sure to find out how vendors deliver services. Some specialized services depend on points of integration with other vendors, and they might offer plug-and-play connectivity out of the box. It\u2019s simpler to invoke Lambda from an API gateway endpoint than to proxy a request to some container or EC2 instance. Graphcool facilitates simple configuration with Auth0, which is easier than using third-party authentication tools.<\/p>\n<p>Choosing the right vendor for your serverless application is an architectural level decision. When you build an application, you don\u2019t expect to return to server management one day. Selecting a cloud vendor is no different from choosing to use containers or databases, or even a programming language. <\/p>\n<p>Consider:<\/p>\n<ul>\n<li>What services you need and why. \n<\/li>\n<li>What services cloud providers offer and how you can combine them with your chosen FaaS solution. \n<\/li>\n<li>What programming languages are supported (whether dynamically or statically typed, compiled or interpreted, what benchmarks exist, performance on cold starts, what the open-source ecosystem is like, etc.).\n<\/li>\n<li>What your security requirements are (SLA, 2FA, OAuth, HTTPS, SSL, etc.).\n<\/li>\n<li>How to manage your CI\/CD and software development cycles.\n<\/li>\n<li>What advantages you can leverage from infrastructure-as-code solutions.\n<\/li>\n<\/ul>\n<p>\nSi vous \u00e9tendez une application existante et que vous ajoutez progressivement des fonctionnalit\u00e9s sans serveur, cela peut limiter quelque peu les capacit\u00e9s disponibles. Cependant, presque toutes les technologies sans serveur offrent des API (via REST ou des files d'attente de messages), permettant de cr\u00e9er des extensions ind\u00e9pendamment du noyau de l'application et avec une int\u00e9gration facile. Recherchez des services avec des API claires, une bonne documentation et une communaut\u00e9 solide, et vous ne serez pas d\u00e9\u00e7u. La simplicit\u00e9 d'int\u00e9gration peut souvent \u00eatre une m\u00e9trique cl\u00e9, et c'est probablement l'une des principales raisons du succ\u00e8s d'AWS depuis la sortie de Lambda en 2015.<\/p>\n<h2>Quand la technologie sans serveur est-elle utile?<\/h2>\n<p>\nLes technologies sans serveur peuvent \u00eatre appliqu\u00e9es presque partout. Cependant, leurs avantages ne se limitent pas seulement aux cas d'utilisation. Le seuil d'entr\u00e9e pour le cloud computing est aujourd'hui si bas en grande partie gr\u00e2ce aux technologies sans serveur. Si des d\u00e9veloppeurs ont une id\u00e9e mais ne savent pas comment g\u00e9rer l'infrastructure cloud et optimiser les co\u00fbts, ils n'ont pas besoin de chercher un ing\u00e9nieur pour cela. Si une startup souhaite cr\u00e9er une plateforme mais craint que les co\u00fbts puissent devenir incontr\u00f4lables, elle peut facilement se tourner vers des solutions sans serveur.<\/p>\n<p>Gr\u00e2ce aux \u00e9conomies r\u00e9alis\u00e9es et \u00e0 la simplicit\u00e9 de la mise \u00e0 l'\u00e9chelle, les solutions sans serveur s'appliquent aussi bien aux syst\u00e8mes internes qu'externes, jusqu'aux applications web avec des millions d'utilisateurs. Les factures sont plut\u00f4t mesur\u00e9es non pas en euros, mais en centimes. La location de l'instance AWS EC2 la plus simple (t1.micro) pendant un mois co\u00fbtera 15 \u20ac, m\u00eame si vous ne l'utilisez pas (qui n'a jamais oubli\u00e9 de l'\u00e9teindre ?!). Pour mettre en perspective, pour atteindre un niveau de d\u00e9penses similaire sur la m\u00eame p\u00e9riode, vous auriez besoin d'ex\u00e9cuter Lambda, avec 512 Mo, pendant environ 3 millions de fois pendant 1 seconde. Et si vous n'utilisez pas cette fonction, vous ne payez rien.<\/p>\n<p>\u00c9tant donn\u00e9 que la technologie sans serveur d\u00e9pend principalement des \u00e9v\u00e9nements, il est assez facile d'ajouter une infrastructure sans serveur \u00e0 d'anciens syst\u00e8mes. Par exemple, avec AWS S3, Lambda et Kinesis, vous pouvez cr\u00e9er un service d'analyse pour un ancien syst\u00e8me de vente au d\u00e9tail, capable de recevoir des donn\u00e9es via une API.<\/p>\n<p>La plupart des plateformes sans serveur prennent en charge diff\u00e9rents langages. Il s'agit le plus souvent de Python, JavaScript, C#, Java et Go. En g\u00e9n\u00e9ral, il n'y a pas de restrictions sur l'utilisation de biblioth\u00e8ques dans ces langages, vous pouvez donc utiliser vos biblioth\u00e8ques open source pr\u00e9f\u00e9r\u00e9es. Cependant, il est pr\u00e9f\u00e9rable de ne pas abuser des d\u00e9pendances afin que vos fonctions s'ex\u00e9cutent de mani\u00e8re optimale et pr\u00e9servent les avantages de l'\u00e9norme \u00e9volutivit\u00e9 de vos applications sans serveur. Plus il faut charger de paquets dans le conteneur, plus le d\u00e9marrage \u00e0 froid prendra du temps.<\/p>\n<p>Le d\u00e9marrage \u00e0 froid consiste \u00e0 initialiser le conteneur, l'environnement d'ex\u00e9cution et le gestionnaire d'erreurs avant de pouvoir les utiliser. Cela peut entra\u00eener un retard d'ex\u00e9cution des fonctions pouvant atteindre 3 secondes, ce qui n'est pas id\u00e9al pour les utilisateurs impatients. Cependant, les d\u00e9marrages \u00e0 froid se produisent lors de la premi\u00e8re demande apr\u00e8s quelques minutes d'inactivit\u00e9 de la fonction. Beaucoup consid\u00e8rent donc cela comme un inconv\u00e9nient mineur qu'on peut contourner en pingant r\u00e9guli\u00e8rement la fonction pour la maintenir en attente. Ou bien, ils ignorent tout simplement cet aspect.<\/p>\n<p>Bien qu'AWS ait lanc\u00e9<noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/rds\/aurora\/serverless\/\"> la base de donn\u00e9es SQL sans serveur Serverless Aurora<\/a><\/noindex>, les bases de donn\u00e9es SQL ne sont pas id\u00e9ales pour ce type d'application, car lors des transactions, elles d\u00e9pendent de connexions qui peuvent rapidement devenir un goulet d'\u00e9tranglement avec un grand trafic sur AWS Lambda. Oui, les d\u00e9veloppeurs am\u00e9liorent constamment Serverless Aurora, et vous devriez l'exp\u00e9rimenter, mais aujourd'hui, les solutions NoSQL comme<noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/dynamodb\/\"> DynamoDB<\/a><\/noindex>sont beaucoup mieux adapt\u00e9es aux syst\u00e8mes sans serveur. Cependant, il est ind\u00e9niable que cette situation changera tr\u00e8s bient\u00f4t.<\/p>\n<p>Les outils imposent \u00e9galement de nombreuses restrictions, notamment en mati\u00e8re de tests locaux. Bien qu'il existe des solutions comme Docker-Lambda, DynamoDB Local et LocalStack, celles-ci n\u00e9cessitent un travail minutieux et une configuration importante. Cependant, tous ces projets sont en d\u00e9veloppement actif, donc ce n'est qu'une question de temps avant que les outils atteignent le niveau dont nous avons besoin.<\/p>\n<h2>L'impact des technologies sans serveur sur le cycle de d\u00e9veloppement<\/h2>\n<p>\n\u00c9tant donn\u00e9 que votre infrastructure est simplement une configuration, vous pouvez d\u00e9ployer et g\u00e9rer le code \u00e0 l'aide de scripts, comme des scripts shell. Ou bien vous pouvez recourir \u00e0 des solutions de type configuration-as-code comme <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/cloudformation\/\">AWS CloudFormation<\/a><\/noindex>. Bien que ce service ne propose pas de configurations pour tous les domaines, il permet de d\u00e9finir des ressources sp\u00e9cifiques \u00e0 utiliser en tant que fonctions Lambda. Autrement dit, l\u00e0 o\u00f9 CloudFormation vous fait d\u00e9faut, vous pouvez \u00e9crire votre propre ressource (fonction Lambda) pour combler cette lacune. Ainsi, vous pouvez faire tout ce que vous voulez, m\u00eame configurer des d\u00e9pendances en dehors de votre environnement AWS.<\/p>\n<p>Puisque tout cela est simplement une configuration, vous pouvez param\u00e9trer vos scripts de d\u00e9ploiement pour des environnements, r\u00e9gions et utilisateurs sp\u00e9cifiques, surtout si vous appliquez des solutions d'infrastructure en tant que code comme CloudFormation. Par exemple, vous pouvez d\u00e9ployer une copie de l'infrastructure pour chaque branche dans le d\u00e9p\u00f4t, afin de les tester de mani\u00e8re totalement isol\u00e9e pendant le d\u00e9veloppement. Cela acc\u00e9l\u00e8re radicalement la r\u00e9cup\u00e9ration des retours des d\u00e9veloppeurs, lorsqu'ils souhaitent comprendre si leur code fonctionne correctement dans un environnement r\u00e9el. Les responsables n'ont pas \u00e0 s'inqui\u00e9ter du co\u00fbt de d\u00e9ploiement de nombreux environnements, puisqu'ils ne paient que pour l'utilisation r\u00e9elle.<\/p>\n<p>Les pr\u00e9occupations des DevOps diminuent, car ils doivent simplement s'assurer que les d\u00e9veloppeurs ont la bonne configuration. Il n'est plus n\u00e9cessaire de g\u00e9rer des instances, des \u00e9quilibres de charge ou des groupes de s\u00e9curit\u00e9. C'est pourquoi le terme NoOps est de plus en plus utilis\u00e9, m\u00eame s'il reste important de savoir configurer l'infrastructure, notamment quand il s'agit de la configuration IAM et de l'optimisation des ressources cloud.<\/p>\n<p>Il existe des outils tr\u00e8s puissants pour le monitoring et la visualisation, tels que Epsagon, Thundra, Dashbird et IOPipe. Ils permettent de surveiller l'\u00e9tat actuel des applications serverless, fournissent des journaux et des traces, enregistrent des m\u00e9triques de performance et des goulets d'\u00e9tranglement architecturaux, effectuent des analyses et des pr\u00e9visions de co\u00fbts, et bien plus encore. Ils ne donnent pas seulement aux ing\u00e9nieurs DevOps, aux d\u00e9veloppeurs et aux architectes une vision compl\u00e8te du fonctionnement des applications, mais permettent \u00e9galement aux responsables de suivre la situation en temps r\u00e9el, avec des co\u00fbts de ressources calcul\u00e9s \u00e0 la seconde et des pr\u00e9visions de d\u00e9penses. Organiser cela avec une infrastructure g\u00e9r\u00e9e est bien plus difficile.<\/p>\n<p>Il est beaucoup plus simple de concevoir des applications sans serveur, car vous n'avez pas \u00e0 d\u00e9ployer des serveurs Web, \u00e0 g\u00e9rer des machines virtuelles ou des conteneurs, \u00e0 patcher des serveurs, des syst\u00e8mes d'exploitation, des passerelles Internet, etc. L'abstraction de toutes ces t\u00e2ches permet \u00e0 l'architecture sans serveur de se concentrer sur l'essentiel : r\u00e9pondre aux besoins des entreprises et des clients.<\/p>\n<p>Bien que les outils puissent encore s'am\u00e9liorer (ils progressent chaque jour), les d\u00e9veloppeurs peuvent se concentrer sur l'impl\u00e9mentation de la logique m\u00e9tier et sur la distribution optimale de la complexit\u00e9 de l'application entre diff\u00e9rents services au sein de l'architecture. La gestion des applications sans serveur est bas\u00e9e sur des \u00e9v\u00e9nements et est abstraite par le fournisseur de cloud (par exemple, SQS, \u00e9v\u00e9nements S3 ou flux DynamoDB). Ainsi, les d\u00e9veloppeurs n'ont qu'\u00e0 coder la logique m\u00e9tier pour r\u00e9agir \u00e0 des \u00e9v\u00e9nements sp\u00e9cifiques, sans se soucier de la meilleure fa\u00e7on de g\u00e9rer les bases de donn\u00e9es et les files d'attente de messages, ou d'organiser le traitement optimal des donn\u00e9es dans des stockages mat\u00e9riels sp\u00e9cifiques.<\/p>\n<p>Le code peut \u00eatre ex\u00e9cut\u00e9 et d\u00e9bogu\u00e9 localement, comme pour n'importe quel processus de d\u00e9veloppement. Les tests unitaires restent inchang\u00e9s. La capacit\u00e9 de d\u00e9ployer toute l'infrastructure d'une application \u00e0 l'aide d'une configuration de pile personnalis\u00e9e permet aux d\u00e9veloppeurs de recevoir rapidement des retours importants, sans se soucier du co\u00fbt des tests ou de l'impact sur des environnements g\u00e9r\u00e9s co\u00fbteux.<\/p>\n<h2>Outils et m\u00e9thodologies pour la construction d'applications sans serveur<\/h2>\n<p>\nIl n'existe pas de m\u00e9thode sp\u00e9cifique pour construire des applications sans serveur, ni de jeu de services d\u00e9di\u00e9s \u00e0 cette t\u00e2che. Aujourd'hui, AWS est le leader parmi les solutions puissantes sans serveur, mais n'oubliez pas de consid\u00e9rer \u00e9galement <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/gcp\">Google Cloud<\/a><\/noindex>,<noindex><a rel=\"nofollow\" href=\"https:\/\/zeit.co\/\"> Zeit<\/a><\/noindex> et <noindex><a rel=\"nofollow\" href=\"https:\/\/firebase.google.com\/\">Firebase<\/a><\/noindex>. Si vous utilisez AWS, une approche recommand\u00e9e pour assembler des applications est <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/serverless\/sam\/\">Serverless Application Model<\/a><\/noindex> (SAM), surtout avec C#, car Visual Studio offre d'excellents outils. SAM CLI peut faire tout ce que fait Visual Studio, donc vous ne perdrez rien si vous passez \u00e0 un autre IDE ou \u00e9diteur de texte. Bien s\u00fbr, SAM fonctionne aussi avec d'autres langages.<\/p>\n<p>Si vous codez dans d'autres langages, le Serverless Framework est un excellent outil open source qui vous permet de configurer n'importe quoi \u00e0 l'aide de fichiers de configuration YAML tr\u00e8s puissants. De plus, le Serverless Framework prend en charge diff\u00e9rents services cloud, donc nous le recommandons \u00e0 ceux qui recherchent une solution multi-cloud. Il poss\u00e8de une grande communaut\u00e9 qui a cr\u00e9\u00e9 de nombreux plugins pour tous les besoins. <\/p>\n<p>Pour des tests locaux, les outils open source tels que Docker-Lambda, Serverless Local, DynamoDB Local et LocalStack sont bien adapt\u00e9s. Les technologies sans serveur sont encore \u00e0 un stade pr\u00e9coce de d\u00e9veloppement, tout comme les outils associ\u00e9s, donc lors de la configuration de sc\u00e9narios de test complexes, vous devrez vous battre un peu. Cependant, d\u00e9ployer simplement une pile dans un environnement et y effectuer des tests est incroyablement bon march\u00e9. Et vous n'avez pas besoin de cr\u00e9er une copie locale exacte des environnements cloud.<\/p>\n<p>Pour r\u00e9duire la taille des paquets d\u00e9ploy\u00e9s et acc\u00e9l\u00e9rer le chargement, utilisez AWS Lambda Layers. <\/p>\n<p>Utilisez les bons langages de programmation pour des t\u00e2ches sp\u00e9cifiques. Diff\u00e9rents langages ont leurs avantages et inconv\u00e9nients. Il existe de nombreux benchmarks, mais JavaScript, Python et C# (.NET Core 2.1+) sont les leaders en termes de performance dans AWS Lambda. R\u00e9cemment, AWS Lambda a introduit l'API Runtime qui permet de sp\u00e9cifier le langage souhait\u00e9 et l'environnement d'ex\u00e9cution, donc exp\u00e9rimentez.<\/p>\n<p>Maintenez une petite taille de paquets pour le d\u00e9ploiement. Plus ils sont petits, plus ils se chargent rapidement. \u00c9vitez d'utiliser de grandes biblioth\u00e8ques, surtout si vous n'utilisez que quelques fonctionnalit\u00e9s d'entre elles. Si vous programmez en JavaScript, utilisez des outils de construction comme Webpack pour optimiser le build et n'inclure que ce dont vous avez r\u00e9ellement besoin. Dans .NET Core 3.0, il existe QuickJit et Tiered Compilation, qui am\u00e9liorent les performances et aident beaucoup lors des d\u00e9marrages \u00e0 froid.<\/p>\n<p>La d\u00e9pendance des fonctions sans serveur aux \u00e9v\u00e9nements peut initialement compliquer la coordination de la logique m\u00e9tier. \u00c0 cet \u00e9gard, les files d'attente de messages et les automates d'\u00e9tat peuvent \u00eatre incroyablement utiles. Les fonctions Lambda peuvent s'appeler mutuellement, mais faites-le uniquement si vous ne vous attendez pas \u00e0 une r\u00e9ponse (\u00ab tir\u00e9 et oubli\u00e9 \u00bb) \u2014 vous ne voulez pas \u00eatre factur\u00e9 pour avoir attendu qu'une autre fonction se termine. Les files de messages sont utiles pour isoler des parties de la logique m\u00e9tier, g\u00e9rer les goulets d'\u00e9tranglement des applications et traiter les transactions (\u00e0 l'aide de files d'attente FIFO). Les fonctions AWS Lambda peuvent \u00eatre associ\u00e9es \u00e0 des files SQS pour servir de files de \u00ab messages bloqu\u00e9s \u00bb, qui suivent les messages \u00e9chou\u00e9s pour une analyse ult\u00e9rieure. Les fonctions AWS Step (automates d'\u00e9tat) sont tr\u00e8s utiles pour g\u00e9rer des processus complexes n\u00e9cessitant la cr\u00e9ation de cha\u00eenes de fonctions. Plut\u00f4t qu'une fonction Lambda qui appelle une autre fonction, les fonctions Step peuvent coordonner les transitions d'\u00e9tat, transmettre des donn\u00e9es entre les fonctions et g\u00e9rer l'\u00e9tat global des fonctions. Cela permet de d\u00e9finir les conditions de r\u00e9essai, ou ce qu'il faut faire en cas d'erreur sp\u00e9cifique \u2014 un outil tr\u00e8s puissant dans des conditions particuli\u00e8res.<\/p>\n<h2>Conclusion<\/h2>\n<p>\nCes derni\u00e8res ann\u00e9es, les technologies sans serveur se d\u00e9veloppent \u00e0 un rythme sans pr\u00e9c\u00e9dent. Ce changement de paradigme est associ\u00e9 \u00e0 certaines id\u00e9es re\u00e7ues. Gr\u00e2ce \u00e0 l'abstraction de l'infrastructure et \u00e0 la gestion de l'\u00e9volutivit\u00e9, les solutions sans serveur offrent des avantages significatifs : de la simplification du d\u00e9veloppement et des processus DevOps \u00e0 une forte r\u00e9duction des co\u00fbts op\u00e9rationnels.<br \/>\nEt bien que l'approche sans serveur ne soit pas sans d\u00e9fauts, il existe des m\u00e9thodologies fiables et des mod\u00e8les de conception qui peuvent aider \u00e0 cr\u00e9er des applications sans serveur robustes ou \u00e0 int\u00e9grer des \u00e9l\u00e9ments sans serveur dans des architectures existantes.<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/nix\/blog\/486180\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0425\u043e\u0442\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0433\u043e\u0434\u044b \u0431\u044b\u0441\u0442\u0440\u043e \u043d\u0430\u0431\u0438\u0440\u0430\u044e\u0442 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c, \u0441 \u043d\u0438\u043c\u0438 \u0432\u0441\u0451 \u0435\u0449\u0451 \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0431\u043b\u0443\u0436\u0434\u0435\u043d\u0438\u0439 \u0438 \u043e\u043f\u0430\u0441\u0435\u043d\u0438\u0439. \u0417\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0442 \u0432\u0435\u043d\u0434\u043e\u0440\u0430, \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439, \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u0430\u043c\u0438, \u0445\u043e\u043b\u043e\u0434\u043d\u044b\u0439 \u0441\u0442\u0430\u0440\u0442, \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0438 \u0436\u0438\u0437\u043d\u0435\u043d\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u2014 \u0432\u0441\u0435 \u044d\u0442\u0438 \u0442\u0435\u043c\u044b \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u044e\u0442\u0441\u044f, \u043a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u043e \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0445. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b\u0445 \u0442\u0435\u043c, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0435\u043b\u0438\u043c\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":55882,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-55881","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0425\u043e\u0442\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0435.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u043e\u0432\u0435\u0442\u044b \u0438 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0425\u043e\u0442\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-30T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:04:02+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Conseils et ressources pour cr\u00e9er des applications sans serveur | ProHoster","description":"Bien que sans serveur.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u043e\u0432\u0435\u0442\u044b \u0438 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 | ProHoster","og:description":"\u0425\u043e\u0442\u044f \u0431\u0435\u0441\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0435.","og:url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/sovety-i-istochniki-informatsii-dlya-sozdaniya-besservernyh-prilozhenij","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-01-30T21:00:00+00:00","article:modified_time":"2020-02-18T11:04:02+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55881","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:35:40","updated":"2022-10-07 20:58:46","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/55881","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=55881"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/55881\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/55882"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=55881"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=55881"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=55881"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}