[PYTHON] En savoir plus sur les applications Web sans serveur AWS

Du concept, n'oubliez pas.

concept

・ Je ne veux pas dépenser d'argent, alors étudiez AWS presque gratuitement → Démarrer un petit service a tendance à être assez coûteux. ・ Viser à assurer un haut niveau de sécurité → Empêchez l'utilisation frauduleuse de votre compte car un montant ridicule vous sera facturé

Hier, j'ai essayé "Pensez à la distribution de contenu dynamique avec AWS Lambda", mais je peux l'implémenter, mais l'implémentation de l'écran (HTML) n'est pas bonne. J'ai ressenti un malaise. Après cela, j'ai pensé jeter un œil à "Tutoriel que j'ai essayé l'autre jour", mais c'est assez difficile. Les programmes liés à l'atelier sont définis et les parties associées sont \aws-serverless-workshops-master\WebApplication\1_StaticWebHosting\website\js C'est une évidence, mais la quantité de code source est importante et difficile. Cependant, il y a aussi le fait que les obstacles ont considérablement augmenté car je n'ai aucune expérience avec Javascript.

Que dois-je faire du côté client?

Hier "Pensez à la livraison de contenu dynamique avec AWS Lambda" effectuait une conversion HTML avec API Gateway. Je ne pense pas que je peux créer un écran compliqué avec ça, alors je vais étudier à nouveau. Sur le site AWS, https://aws.amazon.com/jp/serverless/patterns/serverless-pattern/ Il existe un modèle de conception sans serveur, alors jetons un coup d'œil. Parmi ceux-ci, l'application Web sans serveur est celle que j'ai réalisée dans le didacticiel en haut à gauche. Eh bien, je comprends l'ambiance, mais ce n'est pas le cas, alors je vais demander à Google Sensei.

J'ai fait pas mal de recherches, mais de nombreux articles que j'ai essayés reposent sur API Gateway. Ainsi, lorsque j'ai modifié davantage les mots-clés, j'ai trouvé une page facile à comprendre. C'est une page de M. Kurameso qui est toujours redevable. "SPA sans serveur avec Angular: implémentons un modèle" en savoir plus "en utilisant DynamoDB", mais le diagramme de configuration est clairement décrit. C'est facile à comprendre. Le système Javascript est rafraîchissant, mais j'ai utilisé Angular sur le client. Même si je ne sais pas, je connais le niveau de mot-clé qu'il y a d'autres choses telles que React et Vue.js, donc je suis convaincu que "Oui, je devrais utiliser le framework côté client." Certes, si vous les placez sur S3 et que vous accédez au côté serveur à partir de là via API Gateway, il semble possible de créer une application à grande échelle sans serveur.

image1.png

Que dois-je faire côté serveur?

J'ai en quelque sorte imaginé le côté client, donc je me demande si le côté serveur peut être laissé tel quel. En regardant le blog AWS, j'ai trouvé quelque chose qui m'intéresse. Chalice semble bien gérer API Gateway et Lambda. https://aws.amazon.com/jp/blogs/startup/event-report-chalice-handson/ Je vois. Je pense que les choses que tout le monde pense sont similaires. Je n'ai pas programmé depuis environ 15 ans maintenant, mais il est facile d'imaginer que vous voudrez frapper un tel mur tout de suite.

Au fait, l'explication de Chalice https://qiita.com/tukkyr/items/b1f54b467375ba29facf Cet article était plus facile à comprendre.

J'ai quelques doutes ici. Si vous êtes un ingénieur qui aime uniquement la mise en œuvre, vous pouvez passer à Chalice, mais j'ai une longue expérience avec Empra et je suis définitivement négatif à propos du verrouillage des fournisseurs. N'y a-t-il pas quelque chose de polyvalent parce que c'est juste un peu plus long? J'ai fait quelques recherches, mais c'est toujours ça! Il n'y a pas une telle chose. J'ai trouvé cet article neutre quand je l'ai trouvé. https://www.serverless.com/blog/state-of-serverless-multi-cloud/

Si vous commencez à parler de verrouillage des fournisseurs, l'histoire changera de plus en plus, donc si vous voulez l'implémenter, je pense que vous devriez essayer d'utiliser Chalice. Au fait, j'ai aussi vérifié un peu Openwhisk et Knative, mais ils ont dit quelque chose de différent. Je pense que le serverless n'est pas une évolution des K8, mais comment utiliser les services gérés dans le cloud. Le point est de savoir où placer la couche d'abstraction systématique, mais il peut s'agir d'un framework sans serveur ou d'une autre couche. Je vais omettre cette histoire aujourd'hui.

Comment créer une application Web "facile" et "décente" à l'heure actuelle

Je pense qu'il existe plusieurs façons de le faire, mais il semble que les points clés soient la sélection du cadre côté client, la mise en œuvre côté serveur et la connexion avec API Gateway. Fondamentalement, je pense que le côté client sera un framework basé sur Javascript, donc je me demande s'il faut également utiliser Javascript du côté serveur. Compte tenu du traitement côté serveur et de la compatibilité avec l'IA, Python est inévitable. Personnellement, je n'ai aucune expérience avec Javascript, donc Python est toujours meilleur (même si je ne peux pas parler de Python car je n'ai pas fait de programmation à grande échelle depuis plus de 10 ans, comme je l'ai écrit plus tôt). Mais ensuite, vous devez utiliser les deux épées de la langue.

Je vais m'inquiéter un peu plus, mais la conclusion d'aujourd'hui est ・ Côté client: sélectionnez Angular, React, Vue.js -Côté serveur: gestion basée sur Python, y compris API Gateway utilisant Chalice Je pense que c'est mieux. J'espère pouvoir faire un peu plus de recherches et créer un exemple d'application. .. ..

Recommended Posts

En savoir plus sur les applications Web sans serveur AWS
En savoir plus sur la programmation
Hamari officiel AWS "Création d'applications Web modernes"
En savoir plus sur les tranches Go