Le profiler SQL de VisualVM

Le profiler SQL de VisualVM

Il y a peu, j’ai découvert le profiler SQL de VisualVM et je me suis dit que je devais aussi vous le faire découvrir ;). VisualVM est un outil qui fournit une interface visuelle pour afficher des informations détaillées sur les applications qui s’exécutent sur une machine virtuelle Java (JVM). VisualVM est conçu pour une utilisation au développement et en production. VisualVM fournit des outils de profiling léger dont un profiler SQL. Celui-ci va détecter chaque requête SQL (passant par…

Lire la suite Lire la suite

Introduction à Kestra

Introduction à Kestra

Kestra est un orchestrateur et scheduler de donnée open source. Avec Kestra, les workflows de données, appelés flows, utilisent le format YAML et sont exécutés par son moteur via un appel API, l’interface utilisateur, ou un trigger (webhook, schedule, SQL query, Pub/Sub message, …). Les notions importantes de Kestra sont : Le flow : qui décrit la manière dont la donnée sera orchestrée (le workflow donc). C’est une suite de tasks. La task : une étape du flow qui va…

Lire la suite Lire la suite

Au revoir Zenika, bonjour Kestra

Au revoir Zenika, bonjour Kestra

Après 4 ans, 4 mois et 4 jours (ou presque), je quitte Zenika. Ces 4 années et quelques auront été parmi les plus passionnantes de ma vie professionnelle. Je suis triste de quitter cette super société dans laquelle j’ai pu m’épanouir, grandir et apprendre plein de choses. Je suis sûr que je regretterai Zenika, l’agence de Lille et tous mes collègues, mais l’attrait du projet que me proposais Kestra était trop grand ! Si vous avez envie de savoir ce…

Lire la suite Lire la suite

Quarkus Tip : Tester une fonction Google Cloud

Quarkus Tip : Tester une fonction Google Cloud

J’ai récemment contribué une PR à Quarkus qui contient un framework de test pour les fonctions Google Cloud. Quarkus supporte la création de fonction Google Cloud de trois manières différentes : En utilisant l’API de Google Cloud. En utilisant une extension HTTP de Quarkus : RESTEasy, Reactive routes, Servlet, Spring Web. En utilisant Funqy, l’API de développement de fonction de Quarkus agnostique du fournisseur cloud. Mais jusqu’à aujourd’hui, pour tester ces fonctions, il fallait les packager puis les lancer localement…

Lire la suite Lire la suite

Java 20 : quoi de neuf ?

Java 20 : quoi de neuf ?

Maintenant que Java 20 est features complete (Rampdown Phase One au jour d’écriture de l’article), c’est le moment de faire le tour des fonctionnalités qu’apporte cette nouvelle version, à nous, les développeurs. Cet article fait partie d’une suite d’article sur les nouveautés des dernières versions de Java, pour ceux qui voudraient les lire en voici les liens : Java 19, Java 18, Java 17, Java 16, Java 15, Java 14, Java 13, Java 12, Java 11, Java 10, et Java 9. Force est…

Lire la suite Lire la suite

Java: le projet Valhalla

Java: le projet Valhalla

Cet article a été publié initialement dans le magazine Programmez! #253. Qu’est-ce que le projet Valhalla ? Le projet Valhalla est un projet d’OpenJDK démarré en 2014 dont le but est d’apporter à la JVM une manière plus flexible et performante de définir des types aplatis pour exprimer des données pures (flattened data types). Le but est d’aligner le fonctionnement de la JVM avec les caractéristiques des hardware modernes. Pour cela, il définit de nouveaux types Java qui permettent de…

Lire la suite Lire la suite

Tester une Java Google Cloud Function

Tester une Java Google Cloud Function

Jusqu’il y a peu de temps, tester une Google Cloud Function écrite en Java pouvait se faire via l’invoker fournit par le SDK des Google Cloud Functions mais pas via un test unitaire. Mais cela à changé récemment ! Prenons comme exemple la fonction HTTP suivante : public class HelloHttpFunction implements HttpFunction { @Override public void service(HttpRequest httpRequest, HttpResponse httpResponse) throws Exception { Writer writer = httpResponse.getWriter(); writer.write(« Hello World »); } } Après packaging de celle-ci dans un über JAR, nous…

Lire la suite Lire la suite

Apache Pinot et de ses différents types d’indexes

Apache Pinot et de ses différents types d’indexes

Il y a quelques temps, j’avais enfin pris le temps de tester Apache Pinot, vous pouvez trouver le récit de mes premières expérimentations ici. Apache Pinot est un datastore OLAP (OnLine Analytical Processing) distribué et temps réel, spécialement conçu pour fournir des analyses à très faible latence, même à un débit extrêmement élevé. Si vous ne le connaissez pas, commencez par lire mon article d’introduction avant celui-ci. Une des forces de Pinot est ses différents types d’indexes, ce sont ceux-ci…

Lire la suite Lire la suite

4 ans chez Zenika

4 ans chez Zenika

Avec quelques jours de retard, la date anniversaire étant le 3 septembre, voici le bilan de ma quatrième année chez Zenika. Pour ceux qui seraient intéressé par ce que j’avais fait l’année précédente, c’est ici : Ma troisième année chez Zenika. Quelques chiffres : 11 articles sur mon blog perso, 2 dans le magazine Programmez et 1 sur le blog de Quarkus. 9 sessions de formation données, dont 1 sessions pour la formation Développement d’applications Cloud Ready avec Quarkus que…

Lire la suite Lire la suite

Java 19 : quoi de neuf ?

Java 19 : quoi de neuf ?

Maintenant que Java 19 est features complete (Rampdown Phase One au jour d’écriture de l’article), c’est le moment de faire le tour des fonctionnalités qu’apporte cette nouvelle version, à nous, les développeurs. Cet article fait partie d’une suite d’article sur les nouveautés des dernières versions de Java, pour ceux qui voudraient les lire en voici les liens : Java 18, Java 17, Java 16, Java 15, Java 14, Java 13, Java 12, Java 11, Java 10, et Java 9. JEP 405 : Record…

Lire la suite Lire la suite