Fermer

juillet 12, 2022

Monolithe à sans serveur en 10 minutes


Le concept d’interface de programmation d’applications (API) basée sur le Web existe depuis les années 90. En raison de la nécessité de maintenir et de développer les activités, il existe maintenant des siècles de code existant, dont la plupart sont définis aujourd’hui comme monolithiques. La pensée du changement pour de nombreuses entreprises est au mieux intimidante, voire inconcevable.

Il existe d’innombrables théories, concepts et architectures pour aider à déterminer la meilleure façon de briser les monolithes. Mais alors quoi ? Une fois que vous avez créé un compte AWS, comment transférez-vous vos microservices sans serveur dans AWS ?

Il existe un outil éprouvé appelé Claudia.js à la rescousse. Claudia.js est un outil de déploiement open source pour les microservices qui vous permet de démarrer et de gérer vos fonctions Lambda et Amazon API Gateway.

Claudia.js automatise l’empaquetage des dépendances NPM, en s’assurant que l’API est déployable, en condensant le package pour le transport, en configurant la passerelle API, puis en installant la fonction AWS Lambda. Claudia.js configure tout d’une manière qu’un développeur JavaScript attend de la boîte

Bonjour le monde

Créons notre exemple de service « Monolithic » Hello World.

  1. Créez un nouveau dossier et initialisez avec NPM ou Yarn
  2. Créez un fichier app.js avec les éléments suivants :
    • var apiBuilder = require(‘claudia-api-builder’), api = new ApiBuilder();

      module.exports = api;

      api.get(‘/helloworld’, function() {

      renvoie ‘bonjour le monde’ ;

      });

  1. Ajoutez le Claudia API Builder au package.json
  2. Enfin, installez Claudia.js globalement.
  3. Enfin, installez votre microservice Hello World dans AWS :
Amazon Web Services - Évitez les pannes du centre de contact : planifiez votre mise à niveau vers Amazon Connect

Dans quelques minutes, vous devriez recevoir une réponse semblable à celle-ci :

{

« lambda »: {

« rôle »: « exécuteur de test »,

« nom »: « test »,

« région »: « us-east-1 »

},

« API »: {

« identifiant » : « 4l9jdd7gy9k »,

« module »: « application »,

« URL »: « https://4l9jdd7gy9k.execute-api.us-east-1.amazonaws.com/latest »

}

}

Une fois Claudia.js terminé, les résultats vous donneront l’URL racine de la nouvelle ressource API Gateway. Claudia a créé une ressource de point de terminaison pour /HelloWorld. À ce stade, vous pouvez ajouter /HelloWorld à l’URL ci-dessus et essayer le nouveau point de terminaison dans un navigateur ou une console. Vous devriez voir la réponse « Hello world ».

En moins de 10 minutes, vous avez déployé votre première fonction Lambda et point de terminaison API Gateway dans AWS

Mais que vient-il de se passer ? :

Voici ce que Claudia.js vient de faire :

  • Création d’une copie du projet
  • Emballé toutes les dépendances NPM
  • Testé que l’API est déployable
  • Compressez votre application et déployez-la sur Lambda
  • Création des privilèges d’accès IAM corrects
  • Configuration d’un point de terminaison de passerelle API avec la ressource /HelloWorld
  • Lié la nouvelle ressource à la fonction Lambda précédemment déployée
  • Installation des modèles de transformation API Gateway

La dernière étape pour Claudia consiste à enregistrer la configuration dans un fichier local appelé claudia.json afin que vous puissiez mettre à jour la fonction sans avoir à vous souvenir des détails. Claudia.js facilite tout autant la mise à jour et la maintenance de vos nouveaux microservices.

Conclusion

L’obstacle le plus critique pour les entreprises qui souhaitent passer de leur backend monolithique existant à un cadre plus moderne et agile est de savoir comment obtenir votre travail acharné de conversion des services en un microservice déployé dans AWS. En plus d’ajouter Claudia.js pour la conversion de services monolithiques en microservices, Claudia.js peut être ajouté à vos processus d’intégration et de déploiement continus existants pour réduire votre délai de mise sur le marché et améliorer la qualité.

Comment Perficient peut-il vous aider?

Perficient est un partenaire certifié Amazon Web Services avec plus de 10 ans d’expérience dans la fourniture d’applications et d’expertise au niveau de l’entreprise dans les solutions de plate-forme cloud, le centre de contact, la modernisation des applications, les migrations, l’analyse de données, les outils mobiles, de développement et de gestion, l’IoT, le sans serveur, la sécurité. , et plus. Associé à notre stratégie et à notre équipe de pointe, Perficient est équipé pour aider les entreprises à relever les défis les plus difficiles et à tirer le meilleur parti de leurs implémentations et intégrations.

Apprenez-en plus sur notre pratique AWS et contactez notre équipe ici !






Source link