Weekly Shaarli
Week 41 (October 10, 2022)
On parle souvent des comparaisons entre SQL et NoSQL mais cet article va plus loin en comparant les usages des 5 grandes familles de "Data Store"
- Base de données relationnelles (e.g. PostgreSQL)
- Base de données non-relationnelles (e.g. MongoDB)
- Base de données clé/valeur (e.g. Redis)
- Moteur de recherche (e.g. Elasticsearch)
- File de messages (e.g. Kafka)
Les Objectives and Key Results sont une méthode pour décider des objectifs d'une entreprise et comment les mesurer.
En gros plutôt que de se concentrer sur le résultat, on se concentre sur ce que l'on veut améliorer puis les équipes proposent des idées et testent des choses pour remplir ces objectifs. Les résultats sont analysés avec les Key Results.
Exemple:
Objectif: Améliorer l'efficience de la plate-forme IoT
Key Result #1: Réduire le temps de configuration de 50%
Key Result #2: Corriger 90% des bugs en moins une semaine
Un très bon article de Ploum sur la publicité
Un outil de load testing open source en alternative à Gatling.
Ils supportent le scripting en Javascript et de nombreux protocols: HTTP, WebSocket, GraphQL et même gRPC!
Il est aussi possible d'enregistrer un scénario dans son navigateur et de le rejouer.
Un framework pour créer des API REST en codant les contrôleurs et modèles en TypeScript avec des annotations.
Ça génère automatiquement la spec OpenApi et les JsonSchema en plus.
(Merci Bombi pour le partage)
Raft est un algorithme de consensus distribué très populaire qui permet de garantir la consistence d'un état au sein d'un cluster.
Il est utilisé dans des bases de données (CockroachDB, Mongodb) et dans d'autres produits comme Etcd.
Il couvre l'élection d'un master et la réplication de l'état sur chaque noeud.
Une explication très accessible du fonctionnement de Wine, le programme Linux qui permet de lancer des applications Windows.
Pour rappel, Wine n'est pas un emulateur mais "simplement" une traduction des appels systèmes Windows en appels système Linux.
Les bons conseils pour créer une image de prod avec Node.js.
En bref:
- Utilisez une version LTS avec Debian slim pour réduire la surface d'attaque
- Ne faites pas de
npm installmaisnpm cipour utiliser un ensemble de dépendances stable - Évitez les images alpines car des problèmes peuvent apparaître à ce musl (substitut de la libc)
Un backend pour fédérer les données en provenances de plusieurs sources (SQL, NoSQL, Datawarehouses)
Ils permettent ensuite d'accèder aux données via une API unifiée en ajoutant une couche de droits et du cache.
Le positionnement est clairement orienté Business Intelligence même si ils ne proposent pas de solution concrète pour ça mais plutôt la promesse de facilement connecter des outils existants.
Un système de queing entièrement basé sur Redis.
Ils proposent toutes les fonctionnalités dont on a besoin:
- multi-queue producers et consumers
- garantie du delivery unique
- expiration des messages
- rate limiting
Un article explicatif et en mode tuto ultra complet sur le monitoring d'un cluster Kubernetes avec Prometheus.
Un OCR open source qui supporte plus de 80 langues.
Un outil pour lancer un service caché sur TOR très facilement.
Ça permet ensuite de chatter et envoyer/recevoir des fichiers avec des personnes qui se connectent au service via TOR et une adresse .onion
Une IA qui améliore les performances d'une autre IA.
Une IA de Google a trouvé comment multiplier plus efficacement des matrices de nombres.
C'est une opération très commune dans les réseaux de neurones mais aussi dans les programmes graphiques.
Pour multiplier une matrice de 4x5 par une matrice de 5x5, le meilleure algorithme humain utilisait 80 multiplication et AlphaTensor (le nom de cette IA) a trouvé une méthode avec 76 multiplications!
(Merci Guillaume pour le partage)