Archives de catégorie : Informatique et technologie

Microbenchmark: Java (Sprint Boot) memory hungry compared to Rust (Actix-web)

I ran two micro-benchmarks comparing web service endpoints implemented in Java (Sprint Boot and Spark) and Rust/Actix-web. In summary, performance were equal or not that different, but memory usage was extremely higher in Java. (disclaimer: micro-benchmarks don’t reflect more complex applications, the ease to face various specific cases, to find developers, to adapt the current infrastructure and dev ecosystem…).

Micro-benchmark 1: receive a JSON and return a subset

An overly simplistic benchmark: it does almost no computation excepted deserializing and serializing a JSON.

Java version performed between 0% and 25% slower (according to the number of concurrent calls, the more the better). But the memory consumption was 5Mo for Rust and larger than 300Mo for Java!

Micro-benchmark 2: query a Postgres DB to return the reading of a kanji

The service takes a kanji character (Japanese character of Chinese origin) as a query parameter, search in a Postgres DB all the readings associated to this kanji and return them as a JSON.

Both Java and Rust version had the same performance, the Rust one being less stable according to Apache Bench. But in term of memory… 10Mo for Rust vs 160-190 (Spark) and 258-370Mo (Spring) for Java.

If you are running an infrastructure based on Java « micro »-services, that will make quite an overhead on your hosting bill.

Un VPN sur odroid M1 avec Wireguard

Gros plan sur des câbles électroniques noirs sur une surface également sombre. Parmi eux se trouvent de petites figurines du SWAT à tenue bleu marine et casque jaune. Équipements électroniques en fond
L’équipe a sécurisé le réseau, je répète, l’équipe a sécurisé le réseau.

J’ai configuré un serveur de VPN Wireguard sur mon Odroid M1 (alternative du Raspberry Pi). Cela me permet me connecter à Internet avec mon téléphone de manière sécurisée et confidentielle quand je suis sur un Wi-Fi auquel je n’ai pas confiance. Voici la configuration (j’espère ne pas avoir oublié d’étape).

Continuer la lecture

Odroid M1, premières impressions: pratique, SSD rapide mais CPU lent

J’ai finalement acheté un Odroid M1, vu que le Raspberry 4 (que j’aurais préféré) n’est pas prêt d’être dispo. Mes premières impressions.

  • Une installation basique d’Ubuntu est très simple, juste en mettant un SSD M2, avec une connexion Internet par Ethernet, un écran et un clavier.
  • Petitboot, le gestionnaire de boot, n’est pas mature (ne sauve pas certains réglages).
  • Les performances CPU sont très décevantes, de l’ordre de mon Odroid X2 vieux de 9 ans.
  • Les performances disques avec SSD M2 sont très bonnes. En linéaire, 700Mo/s en lecture, 200Mo/s en écriture avec un simple Fox Spirit PM18 M.2 2280 (marque LDLC). Il y a 9 ans, la puce eMMC de mon Odroid X2 donnait 47Mo/s et 30Mo/s.
  • L’OS officiellement supporté est Ubuntu 2020.04. La version 2022.04 a des limitations de support matériel, notamment pas d’affichage graphique (bref, on ne peut pas l’utiliser en ordi de bureau).
  • Mon vieux modem-routeur Thomson TG784n a un comportement bizarre: je ne peux pas lui donner un bail DHCP illimité. En DHCP le transfert de trafic (ex: de serveur HTTP) cesse de fonctionner au redémarrage suivant quand il obtient une nouvelle IP. J’ai dû mettre une IP statique (et des passerelles et DNS en dur).
Continuer la lecture

Écouteurs à conduction osseuse Shokz OpenRun: avis mitigé

Pour:

  • Ils tiennent bien en place.
  • On reste plus conscient de son environnement quand on court.
  • L’autonomie est bonne (pour le moment, mon téléphone a péché avant les écouteurs).
  • Légers.
  • Le câble de rechargement avec d’un côté un connecteur USB A et de l’autre un petit connecteur aimanté est pratique car il vient se loger correctement automatiquement, ce qui est de bonne augure pour sa durée de vie.

Contre:

  • La qualité sonore n’est vraiment pas terrible, mes écouteurs de base de téléphone Samsung donnent une meilleur impression.
  • Comme tous autres écouteurs, ils sont interdits à vélo ou au volant (en France) sous peine de verbalisation.
  • Comme les oreilles ne sont pas bouchées (c’est le but), ce n’est pas isolant, les sons extérieurs (ex: la foule et les trains à quai dans une gare) masquent rapidement le son.
  • Avec son arceau tour-de-cou, impossible de l’utiliser couché en position normale. Mais on peut orienter l’arceau vers le eau, voire le faire passer sur ou sous le menton (n’ouvrez pas la bouche!).
  • Le qualité du son du micro est vraiment médiocre (j’ai abandonné de faire des réunions téléphoniques avec).
  • Quand la batterie déclinera (je parie sur 4 ans max), les écouteurs ne seront plus qu’un déchet électronique.
  • Rapport qualité-prix assez faible, donc.
  • Fabriqué en Chine (régime autoritaire) par une société chinoise

Heure de PC incorrecte => connections https cassée

Dessin de type anime d'un jeune homme en maillot de bain rouge assis en tailleur dans la neige devant un bâtiment en bois. Il tient ses mains derrière sa tête. Sa bouche ouverte et ses yeux regardant dans le vide semblent témoigner de la surprise ou le désespoire.
La date du PC était décalée de 6 mois, c’était au final problématique.

Sur un vieux PC (Ubuntu 20.04), je n’arrivais pas à installer des programmes avec apt-get, et en fait à me connecter à divers sites web https. Comme Firefox m’indiquait que les certificats n’étaient pas valides, et qu’ils ne l’étaient qu’à partir de 2021, j’ai d’abord pensé que mes autorités de certifications locales étaient obsolètes et donc que les certificats de sites web avaient basculés sur des autorités de certifications que mon ordi ne reconnaissaient pas (encore). Et je n’arrivais pas à faire les mises-à-jour Ubuntu pour cette même raison.

En fait, à un moment donné un programme m’a affiché que mon horloge était dans les choux. Comme elle était positionnée avant décembre 2021 (date de début de validité de l’autorité Digicert par ex.), c’était la cause de l’échec. Firefox et curl pensant que les certificats des sites deviendraient valides dans le future.

Un réglage de l’heure a résolu le problème.

Odroid ou Raspeberry Pi 4? Raspeberry (si vous le trouvez)

(mise à jour: j’ai acheté un Odroid M1 pour des raisons de disponibilité)

Mon vieux Odroid X2 (un mini-ordi ARM de 9×9.5cm) de 2013 vient de tomber en panne. Pour le remplacer, je vois 3 options: un Raspberry Pi 4, un Odroid M1 ou un Odroid N2+. Je vais prendre le Raspberry (à la fin de la pénurie), parce que par le passé mon Odroid a fini par ne plus être supporté et je ne pouvais plus mettre à jour le système à jour, ce qui me laissait avec des vulnérabilités de sécurité et des vieux logiciels très durs à mettre à jour si eux et leurs dépendances ne sont pas déjà préparés par quelqu’un.

  • Pour le Rasberry:
    • Une meilleur pérennité des logiciels et une plus grande communauté. Certains Odroid (pas encore le M1, et on ne sait pas quand) sont supportés par le projet Armbian (outil pour créer des distribs Debian et Ubuntu pour divers mini-ordis), mais je ne sais pas ce qu’il en sera dans 5-7 ans.
    • Sa puce est bien mieux supportée. En octobre 2022, le GPU de l’Odroid n’est supporté par Ubuntu qu’en version 2020.04, pas en 2022.04 (en développement).
    • Wi-Fi intégré.
    • Un plus grand choix de matériels.
  • Pour le Odroid M1:
    • Il est disponible. Selon Ars Technica (octobre 2022), le Raspberry Pi 4 ne sera pas disponible en masse avant des mois.
    • Il a de base un connecteur NMVe et un SATA. On peut fixer un SSD SATA sur la carte avec un support vendu séparément (10€, pas dispo en France), mais cela ne rentrera pas dans le boîtier métallique officiel.
    • Il paraît qu’il chauffe moins.
  • À égalité:
    • si le Rasperry ne supporte que des SSD via un adaptateur USB, cela revient au même prix qu’un M1 avec un boîtier Argon One M2 qui accepte un SSD M2.
    • le Raspberry est plus rapide que le M1 de l’ordre de 25% (sauf pour la crypto AES, beaucoup plus rapide sur le M1).
  • Pour le Odroid N2+: 2 fois plus rapide.
  • Contre le N2+: stockage eMMC (une puce bien plus chère qu’un SSD, mais beaucoup plus petite) et SD, ou bien par USB 3.

Websites that protects their RSS feed with… a captcha page

I installed the RSS reader FreshRSS on my mutualized OVH hosting, and it turns that some websites (also hosted on OVH, ah ah) protects themselves with HTML captcha pages (instead of the RSS XML). And since FreshRSS is completely a robot and will never solve captcha, it just gives an unclear error. Github ticket.

In the captcha page:

  • [domain name] is protected by Imunify360
  • We have noticed an unusual activity from your IP [REDACTED] and blocked access to this website.

Kubuntu: réinstaller le snap de Firefox et perdre son profil

Sur Kubuntu 22.04, j’ai fait la malheureuse expérience de perdre plusieurs semaines de mon profil Firefox en réinstallant la version snap (maintenant par défaut dans Kubuntu, plutôt qu’une version apt/deb). C’est la première fois que je vois une désinstallation et/ou installation d’une application Linux modifier (et en l’occurrence supprimer) des données situées dans le profil de l’utilisateur. Une première affligeante. Jusqu’à présent, les données utilisateurs vivaient leur propre vie dans /home, et on pouvait réinstaller le système ou en changer tout en gardant ses données.

Comment en suis-je arrivé là?

  • Cela fait plusieurs fois que j’ai une popup système me disant de fermer Firefox pour qu’il se mette à jour. Ce que j’ai fait, sans qu’il ne se passe rien, et sans que je trouve comment lancer la mise à jour. J’avais mis à jour avec « sudo snap refresh firefox » (convivialité médiocre).
  • Je suis tombé sur cette page qui indique comment installer le deb fourni par Mozilla.
  • J’ai désinstallé la version snap, puis voyant les instructions suivantes que je n’avais pas envie d’étudier immédiatement, j’ai renoncé et réinstallé le snap.
  • Et là surprise, si j’ai bien compris cela a supprimé mes données dans « ~/snap/firefox », puis ça a à nouveau fait la migration depuis « ~/.mozilla/firefox ». Bref, je me retrouvais avec de vieilles versions de mes profils. Par chance, mes mots de passe et mon historique sont synchronisés, mais j’ai perdu mes onglets courants et des extensions installées.

Première chantage par e-mail de prétendu vol de données

Sur fond de dégradé rouge, un homme d'environ 50 ans en costume sombre pointe un pistolet-jouet rouge et noir
Attention, dernière sommation avant que je tire avec mon pistolet tout à fait vrai!

Je viens de recevoir un e-mail en anglais « nous avons eu votre mot de passe d’e-mail, ce qui nous a permis de récupérer toutes nos données (e-mails, photos, chat…), bla bla bla, on peut les utiliser contre vous, payez 1.500$ par bitcoin », avec comme expéditeur et destinataire mon nom et prénom, et mon e-mail perso (que j’utilise que pour mes communications perso, par pour les achats/forums/…). Petite frayeur temporaire, mais c’est du pipeau.

  • Je regarde les entêtes de l’e-mail, et en fait lorsque les noms et prénoms ne sont pas spécifiés dans le contenu de l’e-mail, mes clients e-mail (fairEmail sous Android et Thunderbird sous Linux) vont les chercher dans leur carnet d’adresse. Bref, l’e-mail n’est pas si ciblé que ça, l’expéditeur n’a que mon adresse e-mail (sûrement récolté dans le carnet d’adresse d’une connaissance).
  • Le serveur source de l’envoi est au Pakistan, pas le serveur de mon hébergeur d’e-mail. Bref, l’expéditeur n’a pas utilisé mon mot de passe e-mail pour l’envoyer. La vérification SPK a échoué.
  • Le corps de l’e-mail spécifie une adresse bitcoin (1JaSs2bTAYVbj6jaqD5Mjfs8gSLYgvYCrK) soit disant unique, ce qui soit-disant leur permettrait de déterminer immédiatement que je l’ai payé. Avec des moteurs de recherche, je vois que des tas de gens ont reçu le même e-mail avec la même adresse bitcoin.

Bref, c’est de l’arrosage large d’une base d’e-mails récupérée arguant de fausses allégations de pénétration de compte, pas de quoi m’inquiéter.

Matériel proprio, obsolescence informatique et tristesse

Je viens de changer la batterie de mon téléphone, et je me suis dit que je pourrais réutiliser ma tablette Nexus 10 (sortie en 2012) pour lire des articles. Je n’ai pas utilisée depuis des années, et elle ne s’allume plus. Changer la batterie coûterait 40€ (sans garantie de succès) et la dernière version d’OS (y compris alternatifs) est antédiluvienne.

Je vois un point commun avec mon mini ordinateur Odroid (et les téléphones en général): ils sont basés sur du matériel dont les pilotes ne sont disponibles que sous la forme de logiciels propriétaires, ce que fait qu’une fois que les mises-à-jour logicielles officielles s’arrêtent les versions communautaires (ex: LineagoOS) finissent par s’arrêter également. Et donc on a le choix entre rester sur une version ante-diluvienne (avec des problèmes de sécurité, des versions de programmes obsolètes et certains ne pouvant être mis à jour) ou devoir changer de matériel. Si le matériel était plus ouvert (comme nombres de composants pour PC), ça augmenterait radicalement la durée de vie des produits. Et donc faute de cela, ma tablette est maintenant un déchet électronique.