🆕 WA-Tech&DevNews N°16

🆕 WA-Tech&DevNews N°16

Bienvenue Étranger

L’éditoC’est “l’introduction”, mais cela fait davantage journal, Ă©crit comme ça.

Ceci est un texte, il est lĂ  pour compenser un manque d’inspiration et crĂ©er une cohĂ©rence visuelle entre les diffĂ©rentes parties de ce document. 

JavascriptLe saviez-vous, le premier nom de ce langage Ă©tait LiveScript. Son crĂ©ateur Brendan Eich l’a nommĂ© ainsi pour le navigateur Netscape – Pour en savoir plus c’est ici 

#Vanilla – Un guide complet sur les API de stockage WebStockage local et stockage de session en JavaScript.
>> C’est par ici

#Vanilla – Le guide ultime pour rĂ©soudre les problĂšmes de performances JavaScript dans les outils de dĂ©veloppement de navigateur.
>> C’est par ici

#Angular – Concevoir un dĂ©tecteur de dimensions avec Angular – Mise en place d’un event pour gĂ©rer les Ă©lĂ©ments responsive nĂ©cessitant du javascript.
>> C’est par ici

#All – Petit guide pour mettre en place des conventions de formatage avec Prettier et VS Code.
Le formatage du code de maniÚre cohérente est une douleur, en particulier lorsque vous travaillez en équipe. Prettier est là pour vous aider.
>> C’est par ici

#Vanilla – 13 points notables extraits du Guide Javascript de Google.
>> C’est par ici

#Vanilla – DĂ©jĂ  partagĂ© par le passĂ© mais un rappel de fait pas de mal. Je vous propose de dĂ©couvrir ce guide sur la diffĂ©rence entre la mĂ©thode map et la mĂ©thode foreach.
>> C’est par ici

PHPLe saviez-vous,  Dans l’enquĂȘte 2019 de stack overflow les dĂ©veloppeur(euse)s du monde entier ont mis PHP dans le top 5 des langages les plus craints – Pour en savoir plus c’est ici 

#Laravel – Je vous propose le flux Twitter de @Enlightn_app et les 100 astuces pour Laravel qu’il a partagĂ© tous les jours depuis le 1er FĂ©vrier 2021
>> C’est par ici

#Symfony #Docker – Une stack docker pour votre projet symfony c’est pas top ? DĂ©couvrez tout cela Ă  travers l’article de maxpou.fr – “Un conteneur pour les gouverner tous” ( Stack Ă  mettre Ă  jour l’article est sur PHP7 )

  • NGINX : le serveur web ;
  • PHP-FPM : le service qui exĂ©cutera le code PHP (PHP7 s’il vous plait !) ;
  • Application : un conteneur qui portera le code symfony ;
  • MySQL : Un SGBDR que l’on ne prĂ©sente plus ;
  • Redis : Un SGBD clĂ©-valeur avec lequel j’aime bien jouer en ce moment ;
  • ELK : Le trio de choc : Elasticsearch – Logstash – Kibana
 parce qu’il y a mieux que les | tail / | grep pour visualiser ses logs !

N’hĂ©sitez pas Ă  vous rapprocher de l’équipe infra ou de Lead Php pour tester tout ça !
>> C’est par ici  –  Il existe cet autre projet OpenSource avec encore plus de clusters si vous voulez 🙂

#Symfony #ApiPlatform – Je sais que vous ĂȘtes dĂ©jĂ  nombreux Ă  regarder ces vidĂ©os. Pour certains vous avez appris Ă  dĂ©velopper avec ! Aujourd’hui il la fait, la formation Graphikart.fr sur API Platform est en ligne et continue Ă  recevoir du contenu toutes les semaines ! DĂ©jĂ  5H de vidĂ©os et 19 chapitres de quoi monter en compĂ©tence rapidement sur une formation ultra rĂ©cente ! DĂ©veloppeurs PHP cela devrait presque ĂȘtre une obligation pour vous de la regarder.
>> C’est par ici

#Symfony – On reste sur Graphikart.fr avec la mise en ligne d’un tutoriel autour de Symfony UX ( que je dĂ©couvre au moment d’écrire cette newsletter ).
Symfony UX est une initiative de la part de l’Ă©quipe Symfony qui permet de donner un accĂšs simple Ă  des composants d’interface avancĂ©s.
>> C’est par ici

DevOpsUne des compĂ©tences d’un DevOps c’est d’ĂȘtre aussi Agile qu’ un astĂ©roĂŻde

DĂ©couverte de l’architecture Serverless du projet BestBidder
A Paris, un nouveau projet a dĂ©marrĂ© il y a peu. On a dĂ©cidĂ© de tester un nouveau type d’infra serveur ou plutĂŽt une infrastructure sans serveur ! On a mĂȘme poussĂ© le bouchon un peu loin car il n’y a mĂȘme pas de framework pour les APIs.

Pour ce faire, on utilise différents services AWS. Je vous présente un schéma largement simplifié pour le besoin de cette news


Présentation des différentes services et du fonctionnement ( pour gagner du temps je vous copie colle les présentations Amazon )

Amazon Route 53 est un service Web de systĂšme de noms de domaine (DNS) dans le cloud hautement disponible et Ă©volutif. Il est conçu pour offrir aux dĂ©veloppeurs et aux entreprises un moyen extrĂȘmement fiable et rentable d’acheminer les utilisateurs finaux vers des applications Internet en traduisant des noms comme www.example.com par des adresses IP de type 192.0.2.1, que les ordinateurs utilisent pour se connecter l’un Ă  l’autre. De plus, Amazon Route 53 est entiĂšrement conforme au protocole IPv6.

Amazon CloudFront est un réseau rapide de diffusion de contenu (CDN) qui distribue en toute sécurité des données, des vidéos, des applications et des API à vos utilisateurs, avec une faible latence et des vitesses de transfert élevées, le tout dans un environnement convivial pour les développeurs.

Amazon API Gateway est un service entiĂšrement opĂ©rĂ©, qui permet aux dĂ©veloppeurs de crĂ©er, publier, gĂ©rer, surveiller et sĂ©curiser facilement des API Ă  n’importe quelle Ă©chelle. Les API servent de « porte d’entrĂ©e » pour que les applications puissent accĂ©der aux donnĂ©es, Ă  la logique mĂ©tier ou aux fonctionnalitĂ©s de vos services backend. À l’aide d’API Gateway, vous pouvez crĂ©er des API RESTful et des API WebSocket qui permettent de concevoir des applications de communication bidirectionnelle en temps rĂ©el. API Gateway prend en charge les charges de travail conteneurisĂ©es et sans serveur, ainsi que les applications web.





AWS Lambda est un service de calcul sans serveur qui vous permet d’exĂ©cuter du code sans provision ou gĂ©rer des serveurs, crĂ©er une logique de dimensionnement de cluster prenant en charge la charge de travail, maintenir les intĂ©grations d’Ă©vĂ©nements ou gĂ©rer les environnements d’exĂ©cution. Avec Lambda, vous pouvez exĂ©cuter du code pour pratiquement n’importe quel type d’application ou service backend , sans aucune tĂąche administrative.

Amazon DynamoDB est une base de donnĂ©es de clĂ©-valeur et de documents, offrant des performances de latence de l’ordre de quelques millisecondes, quelle que soit l’Ă©chelle. Il s’agit d’une base de donnĂ©es multi-rĂ©gion, multi-active et durable entiĂšrement gĂ©rĂ©e. Elle possĂšde des systĂšmes intĂ©grĂ©s de sĂ©curitĂ©, de sauvegarde, de restauration et de mise en cache en mĂ©moire pour les applications Ă  l’Ă©chelle d’Internet. DynamoDB peut traiter plus de 10 mille milliards de demandes par jour et supporte des pics de 20 millions de demandes par seconde.

Amazon Timestream est un service de base de donnĂ©es de sĂ©ries chronologiques rapide, Ă©volutive et sans serveur pour l’IoT et les applications opĂ©rationnelles.Timestream possĂšde des fonctions analytiques de sĂ©ries chronologiques intĂ©grĂ©es, vous permettant d’identifier, quasiment en temps rĂ©el, des tendances et des modĂšles dans les donnĂ©es. Amazon Timestream est serverless et se met Ă  l’Ă©chelle automatiquement pour ajuster la capacitĂ© et les performances. Vous n’avez pas besoin de gĂ©rer l’infrastructure sous-jacente et pouvez ainsi vous concentrer sur la construction de vos applications. 


Amazon TimeStream a Ă©tĂ© choisi pour rĂ©pondre une problĂ©matique projet sur la mise en ligne d’un processus d’enchĂšres en temps rĂ©el avec des enchĂšres programmĂ©es et d’autres directes. Ainsi que le besoin de pouvoir annuler ou de revenir en arriĂšre sur la chaĂźne d’enchĂšres.

Pourquoi on a choisi de faire ça ?

C’est le deuxiĂšme projet parisien ou nous avons Ă  gĂ©rer des charges serveurs attendues trĂšs importantes. ( Des centaines de milliers d’utilisateurs en quelques minutes ). Sur le projet prĂ©cĂ©dent on a appris Ă  gĂ©rer le dimensionnement des serveurs avec AWS AutoScaling mais on a aussi remarquĂ© que configurer tout cela est compliquĂ©. Le maintenir encore plus. Avec une architecture serverless et la provision de charge de AWS Lambda le trafic n’est plus un problĂšme. C’est amazon qui s’occupe de gĂ©rer la charge et d’allouer Ă  chaque utilisateur notre configuration.
Les frais d’hĂ©bergement attendus sont aussi plus optimisĂ©s et thĂ©oriquement moindres d’aprĂšs nos estimations. Le dĂ©coupage des API dans AWS Lambda permet aussi de rendre indĂ©pendante chaque fonctionnalitĂ©. C’est du vrai micro-service !

Comment sont développées les APIs ?

On a choisi de partir sur le langage Node.js. Comme nous avons un front-end Angular cela permet d’avoir un seul langage maĂźtre pour tout le projet : Javascript. Les dĂ©veloppeurs allouĂ©s sur ce projet peuvent donc travailler en front ou en back. Les futurs Ă©volutions et la TMA seront aussi plus faciles Ă  staffer puisque javascript est un langage trĂšs populaire.

Petit point sur l’authentification ?

Le plus gros sujet sur ce projet c’est l’authentification. On travaille avec AWS Lambda et Cognito, je vous partage un petit schĂ©ma du fonctionnement attendu :

Si vous avez d’autres questions sur le sujet, n’ hĂ©sitez pas Ă  me contacter. Nous envisageons de prĂ©senter l’infrastructure plus en dĂ©tails lors d’une soirĂ©e sur Discord. On pourra rentrer en dĂ©tail dans la technique, sur le code et sur la base de donnĂ©es Ă©galement.

Pas de HTML, CSS ou autre cette semaine, la news est dĂ©jĂ  bien garnie 🙂

RĂ©daction :William Krieg
Relecture :Timothée GARNAUD, Sonia KLEIN
Participation indirecte :àŒŒ ぀ ◕_◕ àŒœă€

William

Super HĂ©ro du web / CTO Si vous venez dans nos bureaux je vous fais un cafĂ© ☕ et on discute sur Rocket League

Related Posts

[WA Tools] JSON Visio, pour vous aider a visualiser votre json

[WA Tools] JSON Visio, pour vous aider a visualiser votre json

Le Web3 c’est quoi ?

Le Web3 c’est quoi ?

🆕 WA-Tech&DevNews N°21 0 commentaire

🆕 WA-Tech&DevNews N°21

🆕 WA-Tech&DevNews N°20 0 commentaire

🆕 WA-Tech&DevNews N°20

No Comment

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.