• # native-image

    Posté par . En réponse au journal Java : presque 9 000 requêtes par seconde avec 8 Mo de RAM. Évalué à 4.

    Je serais curieux de savoir ce que peut donner l’exercice dans votre langage préféré.

    Mon langage préféré c'est java donc bon... J'ai pas de doute qu'utiliser netty ou une surcouche peut permettre d'aller bien plus loin.

    Ton exemple m'a donné envi d'essayer native image de graalvm.

    % tree
    .
    └── fr
     └── spacefox
     └── avatar
     └── AvatarHttpServer.java
    3 directories, 1 file
    % javac --release 17 fr/spacefox/avatar/AvatarHttpServer.java
    % native-image fr.spacefox.avatar.AvatarHttpServer

    Comme souvent dis c'est long à compiler, mais on obtient un binaire final :

    % ldd fr.spacefox.avatar.avatarhttpserver
     linux-vdso.so.1 (0x00007ffd4657c000)
     libgtk3-nocsd.so.0 => /usr/lib/x86_64-linux-gnu/libgtk3-nocsd.so.0 (0x00007f0a02043000)
     libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f0a02020000)
     libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f0a0201a000)
     libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f0a01ffe000)
     libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f0a01e0c000)
     /lib64/ld-linux-x86-64.so.2 (0x00007f0a0322c000)
    % ls -sh fr.spacefox.avatar.avatarhttpserver
    16M fr.spacefox.avatar.avatarhttpserver

    Avec ta version (lancé avec java18 avec les même paramètres que toi) j'obtiens 13.5k hit/s avec le binaire j'obtiens autour des 15k hit/s. L'option -verser ne change pas grand chose au résultat.

    33 lignes avec tout le boilerplate, c’est dix fois plus que l’implémentation actuelle. J’aurais pu gratter un peu en ne permettant pas la configuration du port ou du nombre d’images (la version actuelle ne le fait pas) mais ça ne change pas l’ordre de grandeur.

    Tu compare quoi à quoi ? J'imagine que tu ne lance pas le serveur web de PHP, mais que tu utilise php-fpm ou quelque chose du genre, non ? Il consomme combien de mémoire ?

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll