Database

Architecture

High-Level System Design: Metric Monitoring and Alerting System

Cet article présente la conception d'un système de surveillance et d'alerte des métriques. Il détaille les exigences fonctionnelles et non fonctionnelles d'un tel système, incluant les types de métriques à monitorer (CPU, mémoire, etc.), la scalabilité nécessite, et les alertes via divers canaux. Le système doit garantir une haute disponibilité et fiabilité pour traiter jusqu'à 100 millions d'utilisateurs actifs avec des données historiques à conserver sur un an.

Système

Top 10 Database Scaling Techniques Every Senior Developer Should

Cet article présente les 10 techniques de mise à l'échelle des bases de données que tout développeur senior devrait maîtriser. À mesure que les applications évoluent, la performance des bases de données devient souvent un goulet d'étranglement, avec des requêtes lentes et des temps d'attente. Les techniques abordées aident à améliorer l'architecture des bases de données, tant verticalement qu'horizontalement, pour gérer efficacement les volumes de données croissants et les charges de trafic. Ces compétences sont essentielles pour les développeurs travaillant sur des plateformes SaaS, des applications de trading ou des systèmes d'analyse de données.

Dev back

Spring Transaction Propagation Guide

Ce guide complet sur la propagation des transactions dans Spring explique comment gérer les transactions lors de l'appel de méthodes de service. Il couvre les attributs de propagation, notamment REQUIRED, REQUIRES_NEW et NESTED, ainsi que des conseils sur les niveaux d'isolation, les bonnes pratiques et les pièges communs. Des exemples de code et des cas d'utilisation illustrent comment assurer la cohérence des transactions tout en permettant des opérations indépendantes lorsque nécessaire.

Dev back

Authorization Code: Saving the Token & Handling Failures

Cet article présente les principes de base de l'utilisation d'OAuth2 pour l'authentification et la gestion des jetons d'accès. Il explique comment stocker les jetons d'accès dans une base de données ou dans une session, gérer les expirations de jetons et traiter les erreurs potentielles lors de la demande d'autorisation. Les différents scénarios, y compris le refus d'accès par l'utilisateur, sont également abordés.