• Comment j'ai ralenti mon réseau local

    Loading…​

    En 2018, je présentais les avantages du protocole HTTP/2 en terme de temps de chargement des pages Web. Ma première démo reprenait un classique : comparer le temps de chargment d’une image scindée entre HTTP/1 et HTTP/2. On le trouvait par exemple sur le site d’Akamai (page supprimée).

    Pour éviter le risque avec les accès réseaux, il fallait qu’elles soient en local alors que pour être visuelles, il faut de la latence. Pour résoudre cette contradiction, j’ai choisi d’utiliser des conteneurs Docker et d’ajouter volontairement de la latence au niveau du réseau virtuel.

  • Utiliser Moment.js pour afficher les dates en anglais

    Moment.js logo

    Ce billet prend racine dans un problème d’internationalisation de mon application, plus précisément pour la mise en forme des dates avec Moment.JS.

    Mais avant de me lancer, j’aimerais partager mon émotion. J’ai commencé ce blog il y a un peu plus de 10 ans, et c’est mon premier billet sur du développement front. Autant vous dire que je me sens complètement illégitime, mais comme ça fait longtemp que ce sentiment ne me freine plus, je me lance.

  • Comment mettre en forme un Distinguished Name en Java ?

    Java 16

    Java 16 est sorti ! Mais comme c’est une version à maintenance courte, ce n’est pas vrai événement. On attendra la version 17 pour s’enthousiasmer.

    Ceci dit, en parcourant la liste des changements, je suis tombé sur la dépréciation des méthodes qui permettent d’avoir une représentation textuelle d’un nom X.500.

    Comme je me suis fait avoir avec ces méthodes dans un projet récent, je vais vous raconter pourquoi c’est une mauvaise idée de les utiliser.

  • Exemple de back-pressure avec Vert.x

    back pressure valve

    Dans le billet de début juin, je montrais les difficultés à charger un gros fichier en mémoire en utilisant les APIs de Vert.x. En conclusion, ces APIs n’étaient pas faite pour ça, mais pour gérer des flux.

    Aujourd’hui, je vais me placer dans un cas de flux. Plutôt que de charger le fichier, je vais voir comment Vert.x peut le servir en téléchargement. Et pour voir l’efficacité, on va essayer de faire ça avec le mimimum de mémoire, de l’ordre de quelques Mo.

  • Lecture de gros fichier avec Vert.x

    File

    Dans mon billet de mai, je racontais l’histoire de la OutOfMemmoryError avec la direct buffer memory, en utilisant la méthode Files.readAllBytes(path) et un pool de threads. En réalité, le problème ne s’était pas posé en utilisant directement ces éléments, mais indirectement dans Vert.x.

    Dans ce billet-ci, je vais reprendre l’histoire en la replaçant dans son contexte original : du Vert.x et des gros fichiers.

    Vert.x n’est pas fait pour ça mais on y arrive quand même.