Articles

Exécuter mes applications Go de manière sans serveur - Partie 2

Dans cet article, je vais vous montrer comment exécuter vos applications Go sans serveur, en utilisant des services cloud et des outils de développement. Partie 2 de cette série de tutoriels !

## La première partie de cette série vous a présenté le AWS Lambda Go API Proxy et comment ses implémentations d’adaptateur spécifiques au cadre / package (pour gorilla / mux, echo et net / http) vous permettent d’exécuter des applications Go existantes en tant que fonctions AWS Lambda frontées par Amazon API Gateway.

Le premier volet de cette série vous a présenté le AWS Lambda Go API Proxy et comment ses implémentations adaptées au framework/package spécifique (pour gorilla/mux, echo et net/http) vous permettent d’exécuter des applications Go existantes en tant que fonctions AWS Lambda frontées par Amazon API Gateway. Si vous ne l’avez pas encore fait, je vous encourage à y jeter un coup d’œil pour avoir une compréhension de base du AWS Lambda Go API Proxy.

Le AWS Lambda Go API Proxy prend également en charge Gin, qui est l’un des frameworks web Go les plus populaires ! Ce billet de blog suivant démontrera comment prendre un service de raccourcissement d’URL existant écrit à l’aide du framework Gin et le faire fonctionner en tant que fonction AWS Lambda sans serveur. Au lieu d’utiliser AWS SAM, nous allons changer un peu les choses et utiliser le AWS CDK pour déployer la solution.

Pour cela, nous allons créer une base de données DynamoDB pour stocker les URL raccourcies et une fonction Lambda pour gérer les requêtes entrantes. La fonction Lambda sera appelée par Amazon API Gateway et répondra aux requêtes GET et POST. La fonction Lambda utilisera la base de données DynamoDB pour stocker et récupérer les URL raccourcies. Une fois la base de données configurée et la fonction Lambda créée, nous allons utiliser le AWS CDK pour déployer le tout sur AWS.

Source de l’article sur DZONE

Différences principales entre AWS ECS et AWS Lambda: 5 points clés

Les services AWS ECS et AWS Lambda sont des outils puissants pour le développement et le déploiement d’applications. Découvrez les 5 principales différences entre ces deux services !

## Comment le cloud computing a révolutionné l’industrie du logiciel au cours des 10 dernières années

La technologie cloud a révolutionné l’industrie du logiciel au cours des 10 dernières années. Aujourd’hui, la plupart des organisations préfèrent héberger des applications et des services sur le cloud en raison de la facilité de déploiement, de la sécurité élevée, de la scalabilité et des coûts de maintenance peu élevés par rapport à l’infrastructure sur site. En 2006, Amazon a lancé sa plate-forme de services cloud, Amazon Web Services (AWS), l’un des principaux fournisseurs de cloud à ce jour. Actuellement, AWS propose plus de 200 services cloud, notamment l’hébergement cloud, le stockage, l’apprentissage automatique et la gestion des conteneurs.

L’architecture cloud permet aux entreprises de bénéficier d’une variété de services et d’applications à un coût réduit. Les entreprises peuvent facilement déployer des applications sur le cloud et les mettre à l’échelle en fonction de leurs besoins. Les services cloud sont également très sûrs et offrent une haute disponibilité et une redondance pour assurer la continuité des activités. Les services cloud sont également très flexibles et peuvent être facilement adaptés aux besoins changeants des entreprises.

Les avantages de l’architecture cloud sont nombreux et divers. Les entreprises peuvent bénéficier d’une plus grande flexibilité et d’une meilleure scalabilité pour répondre aux besoins changeants des clients. Les entreprises peuvent également réduire leurs coûts de maintenance et leurs coûts d’exploitation grâce à l’utilisation des services cloud. Les entreprises peuvent également bénéficier d’une plus grande sécurité et d’une meilleure disponibilité grâce à l’utilisation des services cloud. Enfin, les entreprises peuvent bénéficier d’une plus grande productivité grâce à l’utilisation des services cloud.

L’architecture cloud est un outil puissant qui offre aux entreprises une variété de services et d’applications à un coût réduit. Les entreprises peuvent bénéficier d’une plus grande flexibilité, d’une meilleure scalabilité, d’une plus grande sécurité et d’une meilleure disponibilité grâce à l’utilisation des services cloud. En outre, les entreprises peuvent réduire leurs coûts de maintenance et leurs coûts d’exploitation grâce à l’utilisation des services cloud. Enfin, les entreprises peuvent bénéficier d’une plus grande productivité grâce à l’utilisation des services cloud.

L’architecture cloud est un outil puissant qui offre aux entreprises une variété de services et d’applications à un coût réduit. Les avantages qu’elle procure sont nombreux et variés, et les entreprises peuvent en tirer parti pour améliorer leur productivité, réduire leurs coûts et améliorer leur sécurité et leur disponibilité. La technologie cloud est donc un outil essentiel pour les entreprises qui souhaitent tirer parti des avantages qu’elle offre pour améliorer leurs activités.

Source de l’article sur DZONE

Fargate vs Lambda : Qui sera le vainqueur ?

Fargate et Lambda sont deux technologies très populaires parmi les développeurs cloud. Quel est le meilleur pour votre projet ? Découvrons qui sera le vainqueur !

## Comparaison Fargate vs Lambda dans l’espace sans serveur

Quelles sont les différences entre Fargate et Lambda ?

Fargate et Lambda sont deux options de calcul sans serveur populaires disponibles dans l’écosystème AWS. Bien que les deux outils offrent un calcul sans serveur, ils diffèrent en ce qui concerne les cas d’utilisation, les limites opérationnelles, les allocations de ressources d’exécution, le prix et les performances. Fargate est une moteur de calcul sans serveur proposé par Amazon qui vous permet de gérer efficacement les conteneurs sans les tracas de la mise en provision des serveurs et de l’infrastructure sous-jacente. Lambda, quant à lui, est une plateforme de calcul sans serveur qui vous permet d’exécuter du code sans avoir à gérer des serveurs. Lambda est conçu pour prendre en charge des charges de travail à courtes durées et à faible consommation de ressources.

Quelle est la meilleure option pour l’architecture ?

Lorsqu’il s’agit de choisir entre Fargate et Lambda, il est important de comprendre leurs différences et leurs avantages. Pour les applications à longue durée et à haute consommation de ressources, Fargate est la meilleure option car il offre une gestion des conteneurs plus efficace et une meilleure performance. Cependant, pour les applications à courtes durées et à faible consommation de ressources, Lambda est la meilleure option car il offre une exécution plus rapide et une meilleure utilisation des ressources. En fin de compte, le choix entre Fargate et Lambda dépend des exigences spécifiques de votre application et de votre architecture. Il est important de prendre en compte le coût, la performance et les fonctionnalités avant de prendre une décision finale.

Quelle que soit l’application ou l’architecture que vous souhaitez mettre en place, Fargate et Lambda sont tous deux des outils puissants qui peuvent vous aider à atteindre vos objectifs. En tant qu’informaticien enthousiaste, je trouve que ces outils sont très utiles pour créer des applications modernes et évolutives. Fargate et Lambda offrent tous les deux des fonctionnalités avancées qui peuvent être utilisées pour créer des architectures robustes et flexibles. Les deux outils sont faciles à utiliser et peuvent être intégrés à d’autres services AWS pour offrir une expérience utilisateur optimale. En fin de compte, le choix entre Fargate et Lambda dépendra des exigences spécifiques de votre application et de votre architecture.

Source de l’article sur DZONE

Provisioning AWS resources for your applications/organization can be complex—creating the AWS infrastructures (SQS, SNS, Lambda, S3…) with a fine-grained permissions model—and then trying to integrate your infrastructure with your applications will take time until you test it to ensure the whole flow is working as expected.

In this article, I will introduce you to LocalStack, a cloud service emulator that runs in a single container on your laptop or in your CI environment. With LocalStack, you can run your AWS applications or lambdas entirely on your local machine without connecting to a remote cloud provider.

Source de l’article sur DZONE

In the early days of software development, anyone seeking to develop a web, mobile, or backend application had to own the hardware required to run a server, which is an expensive process.

Then, when cloud computing came, it became possible to lease server space or a number of servers remotely. The developers and companies who rent these fixed units of server space generally overbuy to ensure that a spike in traffic or activity won’t exceed their monthly limits and break their applications. Because of this, a lot of the server space that gets paid for can be wasted.

Source de l’article sur DZONE

A combination of AWS Lambda and Amazon API Gateway is a widely-used architecture for serverless microservices and API-based solutions. They enable developers to focus on their applications, instead of spending time provisioning and managing servers.

API Gateway is a feature-rich offering that includes support for different API types (HTTP, REST, WebSocket), multiple authentication schemes, API versioning, canary deployments, and much more! However, if your requirements are simpler and all you need is an HTTP(S) endpoint for your Lambda function (for example, to serve as a webhook), you can use Lambda Function URLs! When you create a function URL, Lambda automatically generates a unique HTTP(S) endpoint that is dedicated to your Lambda function.

Source de l’article sur DZONE

Step Functions, the serverless finite state machine service from AWS. With DynamoDB, Lambda, and API Gateway, it forms the core of serverless AWS services. If you have tasks with multiple steps and you want to ensure they will get executed in the proper order, Step Functions is your service of choice.

It offers direct integrations with many AWS services, so you don’t need to use Lambda Functions as glue. This can improve the performance of your state machine and lower its costs.

Source de l’article sur DZONE

Lambda functions are a fundamental component of the AWS serverless model. They provide a simple, cost-effective, and easily scalable programming model based on FaaS (functions as a service).

Lambda ARNs

Lambda functions can be referenced by their ARN (Amazon Resource Name). For example, the ARN to reference a ‘helloworld‘ function in the ‘us-east-2‘ region in account ‘3445435‘ would be:

Source de l’article sur DZONE

Image Source: Pixabay

An API Gateway is an essential component of any microservices architecture. Amazon provides its own API Gateway service, which you can use to enable user access to a microservices application, and manage API communication between microservices. 

Source de l’article sur DZONE

The serverless journey started with functions – small snippets of code running on-demand and a short period in Figure 1.  AWS Lambda in the “1.0” phase made this paradigm very popular, but it had its limitations around execution time, protocols, and poor local development experience. 

Since then, developers realized that the same serverless traits and benefits could be applied to microservices and Linux containers. This leads us into what we’re calling the “1.5” phase in Figure 1.  Some serverless containers here completely abstract Kubernetes, delivering the serverless experience through an abstraction layer that sits on top of it, like Knative.

Source de l’article sur DZONE