Ce document traite des techniques de programmation lock-free pour réduire la contention et améliorer la scalabilité des systèmes. Il aborde des sujets tels que le modèle de mémoire Java, les structures de données lock-free comme les queues, ainsi que les stratégies de synchronisation adaptées pour optimiser la performance. Enfin, il présente des outils comme JCTools et le concept d'OrderedScheduler pour gérer le traitement de flux de données en maintenant l'ordre d'exécution sans surcoût de thread additionnel.