HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

Les meilleurs longs formats de Hacker News, relus plus calmement.

6759 articles Page 304/676 Sans filtre

06:04

Does Postgres Scale?

Les auteurs ont mesuré la scalabilité d’un seul serveur Postgres en se focalisant sur les écritures, jugées le goulot d’étranglement des workflows durables. Sur une instance AWS RDS db.m7i.24xlarge, Postgres a soutenu jusqu’à 144 000 petites écritures par seconde (≈12 milliards par jour) et jusqu’à 43 000 workflows sans étapes par seconde. L’étude identifie le flush du WAL comme le principal goulot pour les charges intensives en écriture, car toutes les transactions doivent synchroniser le journal avant engagement. Les workloads de queues Postgres nécessitent plus d’écritures et subissent aussi des contentions de verrouillage sur les têtes de file, mais le partitionnement de la queue augmente le débit jusqu’à 30,6K workflows par seconde. Les auteurs fournissent le code open source et concluent que, pour la plupart des usages, un seul serveur Postgres suffit et que le sharding permet d’atteindre des performances supérieures si nécessaire.

06:04

I aggregated 28 US Government auction sites into one search

Le site agrège les enchères gouvernementales de GSA, GovDeals, Ritchie Bros et de 27 sources supplémentaires, avec 72 649 annonces actives dans les 50 États. Une seule barre de recherche permet de trouver des biens classés par catégorie ou par État, évitant de consulter chaque plateforme séparément. Chaque annonce reçoit un Deal Score de 1 à 10 basé sur le prix, la vitesse des enchères et le temps restant, et les listes sont actualisées deux fois par jour. Toutes les annonces renvoient vers la vente originale sans intermédiation : le service ne prend pas de commission et ne gère pas les offres. Le site fournit aussi des guides pratiques sur l'inscription, l'inspection, l'expédition et les sites d'enchères, ainsi qu'une newsletter quotidienne avec dix bonnes affaires sélectionnées.

06:03

Full-Text Search with DuckDB

L'article examine l'état des capacités de recherche en texte intégral dans DuckDB via l'extension Full-Text Search et le compare brièvement à des moteurs plus complets comme Postgres et Elasticsearch. Il rappelle les principes de base de la FTS, notamment le stemming, la suppression des stop words, la normalisation des accents et l'utilisation de l'algorithme Okapi BM25 avec les paramètres k₁ (fréquence) et b (normalisation de longueur). L'auteur décrit un flux de travail pratique : prétraiter des fichiers .eml en JSON avec un script Python, importer les données dans DuckDB, ajouter un identifiant, créer un index FTS et lancer des requêtes. Des exemples montrent l'utilisation de requêtes basiques et conjonctives ainsi que l'effet du réglage de k₁ et b sur le classement, et notent des manques actuels comme l'absence d'une fonction de mise en évidence des correspondances. La conclusion est que la FTS de DuckDB est suffisamment puissante pour des usages exploratoires et simple à déployer, mais que les utilisateurs nécessitant des fonctionnalités avancées gagneront à exporter vers Postgres ou Elasticsearch, et l'auteur envisage d'explorer la recherche vectorielle dans un prochain article.

06:03

10Gb/s Ethernet: what I did to get it working in my home

L'auteur a entrepris une montée en débit progressive du réseau domestique en passant d'une infrastructure 2,5Gb/s à une configuration 10Gb/s, en testant d'abord la connectivité interne. Il a installé un switch MikroTik SFP+ (nigel), une carte SFP+ PCIe pour son poste principal (perry), des câbles DAC, a utilisé le port SFP+ d'un switch TRENDnet pour le cluster Proxmox, puis a ajouté des switches MikroTik 10GBASE-T (norman et nelly) et un routeur Protectli (reggie) avec cages SFP+. Les tests avec iperf3 et un adaptateur Ethernet 10Gb/s ont montré des débits proches de 10Gb/s dans un sens et environ 7Gb/s dans l'autre, la limitation côté réception étant liée à la charge CPU et aux interruptions sur le dongle USB. Le dispositif de supervision (Telegraf/InfluxDB/Grafana) a permis de suivre les températures et a révélé des problèmes thermiques, notamment un module SFP+ très chaud, incitant à ajouter des dissipateurs, déplacer un point d'accès et envisager une ventilation active. La configuration finale a permis d'obtenir des débits proches de 10Gb/s à travers le routeur et les trois switches, satisfaisant les usages actuels tout en laissant la possibilité d'une migration vers la fibre optique pour des débits supérieurs mais plus coûteuse à déployer.

06:03

Honker – Durable queues, streams, pub/sub, and cron scheduler in a SQLite file

Honker est une extension chargeable de SQLite qui apporte des primitives durables de pub/sub, file de tâches et flux d'événements sans besoin de démon ou de broker externe. La même implémentation sur disque est partagée par des liaisons pour Python, Node, Rust, Go, Ruby, Bun, Elixir et C++, ce qui permet d'utiliser les mêmes files et flux depuis plusieurs langages. La principale idée est d'enregistrer les jobs comme des lignes dans la base pour permettre d'atomiser l'enqueue avec les écritures métiers dans la même transaction, de sorte qu'un rollback supprime à la fois l'opération métier et la tâche. Pour réveiller les processus cross-process, l'extension interroge PRAGMA data_version toutes les millisecondes (lecture d'environ 3 µs) et propage un signal depuis un thread poller unique par fichier, ce qui donne une latence p50 d'environ 0,7 ms sur un laptop M‑series. Honker présente des compromis utiles pour qui utilise SQLite comme stockage principal, tandis que des solutions Postgres matures comme pg-boss ou Oban restent recommandées si l'on dispose déjà d'un serveur Postgres.

06:03

Snowball Earth may hide a far stranger climate cycle than anyone expected

Une nouvelle modélisation propose que la période sturtienne ait été marquée par des cycles répétés de glaciation et de réchauffement plutôt que par un état continu de Snowball ou Slushball. Les modèles Snowball et Slushball présentent des incohérences avec les contraintes géologiques et biologiques, notamment parce que l'arrêt de l'altération des silicates impose des cycles de CO2 de l'ordre de quelques millions d'années et que l'oxygène atmosphérique devrait s'épuiser bien avant 56 millions d'années de glaciation continue. Les chercheurs ont utilisé un modèle compartimenté couplé en faisant varier l'activité volcanique, les taux d'altération et la taille du Franklin Large Igneous Province, dont l'émersion vers 717 Ma aurait fourni d'importants volumes de basalte frais propices à l'altération et à la séquestration du CO2. Leurs simulations montrent que l'altération progressive du LIP de Franklin peut engendrer des « cycles limites » où l'altération s'interrompt pendant la glaciation, le CO2 s'accumule puis est redéplété lors des interglaciaires, permettant des épisodes répétés de glaciation compatibles avec la durée observée et le maintien d'oxygène suffisant pour la vie. Bien que simplifié et n'intégrant pas tous les processus biogéochimiques possibles, ce scénario cyclique fournit une explication plausible aux discordances des modèles antérieurs et aide à mieux comprendre des épisodes glaciaires sur des planètes semblables à la Terre.

06:02

New copy of earliest poem in English, written 1,3k years ago, discovered in Rome

Des chercheurs de Trinity College Dublin ont identifié dans la Bibliothèque nationale centrale de Rome un manuscrit daté de 800–830 contenant la version en vieil anglais de l'Hymne de Caedmon intégrée au texte latin de Bède. Il s'agit du troisième plus ancien témoin du poème en survivance, la présence du texte en vieil anglais dans le corps du manuscrit différant des deux exemplaires plus anciens où il n'apparaît qu'en marge ou en appendice. La découverte, rendue possible par la numérisation des collections et le travail de Dr Elisabetta Magnanti et Dr Mark Faulkner, indique que le poème anglo-saxon était réinséré et apprécié par des lecteurs moins d'un siècle après la rédaction de l'Histoire ecclésiastique. Le codex, produit à l'abbaye de Nonantola, a connu une histoire mouvementée (vols et transferts privés) avant d'être considéré perdu puis redécouvert lors de la numérisation de la bibliothèque romaine. Les chercheurs soulignent que ce témoin enrichit la connaissance des liens culturels entre l'Angleterre et l'Italie au haut Moyen Âge et l'histoire des débuts de la littérature anglaise.

06:02

Show HN: Winpodx – run Windows apps on Linux as native windows

winpodx exécute un Windows dans un conteneur (dockur/windows) et présente chaque application Windows comme une fenêtre native Linux via FreeRDP RemoteApp. L'outil s'installe en une ligne ou via des paquets et découvre automatiquement les applications du conteneur pour créer des entrées de menu avec leurs vraies icônes sans configuration manuelle. Parmi ses fonctionnalités figurent le multi‑session RDP, la rotation automatique des mots de passe, la suspension/reprise automatique du conteneur et le partage bidirectionnel du presse‑papier, du son, des imprimantes et des périphériques USB. Les limites comprennent l'absence de rendu GPU accéléré par défaut et l'absence de session RDP plein écran, et l'installation initiale peut prendre plusieurs minutes pour préparer l'image Windows. Le projet est en développement actif (beta), écrit en Python avec une interface Qt6 optionnelle, propose une voie d'installation hors ligne et est distribué sous licence MIT.