Gatling : logiciel de test de performance

Logo Gatling

Gatling est un logiciel qui permet de tester la charge et les performances d’un site ou d’une application web.

Il inclut un outil de test de charge, un générateur de rapport au format HTML, et un enregistreur de simulation.

Gatling va lancer des simulations, qui vont contenir un ou plusieurs scénarios.

Ces scénarios sont composés de requêtes à exécuter.

Des utilisateurs fictifs sont ensuite injectés au scénario pour simuler une charge et/ou un timing donné (exemple : 10 utilisateurs pendant 30 secondes).

Pour établir ces simulations Gatling propose deux solutions :

  • utiliser le recorder
  • coder soi-même les classes en Scala
Lire la suite

Gravitee : une solution d’API Management

Logo Gravitee

Gravitee est une solution d’API Management, aussi appelée API Plateform, ou API Gateway (mais c’est réducteur).

Cet outil open-source développé par une société lilloise, est un concurrent d’outils du même type comme : Kong, Apigee, WSO2, Tyk.

Il est composé de plusieurs briques indépendantes qui couvrent la plupart des besoins de ce type d’architecture.

Le principal intérêt est l’utilisation de l’API Gateway qui devient le point unique d’accès aux API et va donc centraliser tous les appels. Il peut être coupler à un Access Management qui sera responsable de la gestion de l’authentification et des autorisations.

Lire la suite

Démarrer avec Vue.js, Apollo, GraphQL, Hasura et PostgreSQL

Vue.js, Apollo, GraphQL, Hasura, PostgreSQLVoici comment démarrer tranquillement une application avec un front Vue.js qui interroge une API GraphQL.

Le tout sans faire trop d’effort à l’aide d’Hasura et d’Apollo.

Ça fait pas mal de technos :

  • Vue.js : framework front JS
  • Apollo : composant qui permet d’interroger une API GraphQL depuis le front
  • GraphQL : type d’API créé par Facebook en 2012 (différent de REST et SOAP)
  • Hasura : outil open-source qui permet d’exposer une API GraphQL depuis une base de donnée PostgreSQL
  • PostgreSQL : le SGBD qui va stocker les données

Lire la suite

Docker Registry privé

Docker RegistryDocker est une plateforme open-source qui permet de packager des applications sous forme de container en embarquant leurs dépendances, ce qui lui permet d’être facilement portable et déployable.

Un container est fabriqué à partir d’une “image”, nous allons voir comment gérer un registre privé d’images Docker avec Portus.

Installer Docker et Docker Compose sur le serveur qui fera office de registre.

Lire la suite

Sylius : e-commerce avec Symfony

Logo SyliusJuste un petit billet pour mettre en avant un framework e-commerce open-source basé sur Symfony, et qui commence à faire sa place : Sylius.

L’outil est développé sous forme de composants Symfony, le code est très propre et testé avec Behat.
La documentation est également bien faite, présentant d’abord les concepts principaux, puis les bonnes pratiques pour customiser/étendre les fonctionnalités du framework, et enfin quelques use-case sont présents dans le Cookbook.

Lire la suite

RabbitMQ et Symfony 4 : introduction

Logo RabbitMQRabbitMQ est un outil intéressant qui permet à une application ou site web, de se décharger de certaines tâches qui peuvent se faire de manière asynchrones et/ou par d’autres briques applicatives.

Son fonctionnement comprend quelques termes nouveaux :

« RabbitMQ est un message broker, son rôle est de transporter et router les messages depuis les publishers vers les consumers. Le broker utilise les exchanges et bindings pour savoir si il doit délivrer, ou non, le message dans la queue. »

Lire la suite

Salon : Paris Web 2018

Paris Web Logo

La conférence Paris Web 2018 regroupe plusieurs thèmes autour du web (accessibilité, RGPD, sécurité, UX, IA etc.), les intervenants sont français ou anglophone et travaillent dans des sociétés/organismes plus ou moins important (Mozilla, Google, W3C, IBM etc.).
Les trois jours sont rythmés de conférences et d’ateliers, le tout garni de petits fours et de litres de café.
Voici quelques feedback en vrac sur les grands thèmes présents de l’année 2018.

Lire la suite

Symfony : connecter avec MongoDB et Elasticsearch

symfony-mongodb-elasticsearchSymfony permet à l’aide de bundle, de s’implémenter facilement avec MongoDB et Elasticsearch.

Le principe dans l’exemple qui suit, est une application web Symfony qui fonctionne avec une base maître MongoDB.
Cette base MongoDB synchronise régulièrement certaines de ses données dans Elasticsearch qui sera responsable de la recherche.

Symfony interroge ensuite Elasticsearch afin d’obtenir des résultats de recherche, qui lui renvoie les id des objets MongoDB afin d’aller chercher l’information brute dans la base maître.

Lire la suite

Monitoring : Elastic Stack

Logo Elastic StackElastic Stack, anciennement ELK (Elasticsearch, Logstash, Kibana), est une suite d’outils qui ensemble permettent de monitorer des serveurs.

Beats et ses sous-modules sont chargés de récupérer les logs (Filebeat) et informations machine (CPU, RAM, Disk) avec Metricbeat. Ces agents sont à installer sur les serveurs clients.

Logstash collecte ces données, les transforme si besoin et les insère dans Elasticsearch, qui stock et index toutes les données.

Kibana est responsable de l’interface, permettant de créer des dashboards customisés, et de chercher des informations dans tout le flow de data.

Le module complémentaire X-Pack permet d’ajouter une couche intéressante de sécurité et d’alerting, il faudra toutefois s’acquitter d’une licence.

Lire la suite