Deadlocks dans l'environnement WSL

En suivant ce guide, j’ai configuré la dernière version d’Ubuntu sur WSL.
Cette configuration fonctionne parfaitement pour mes projets PHP ou JavaScript, mais pas avec Discourse. Je rencontre deux gros problèmes :

  1. Discourse sur WSL est très lent. Il faut 4 à 6 secondes pour charger une page. Le processeur i7 8750h est sollicité à 100 % lors du traitement des requêtes.
  2. WSL se bloque complètement toutes les 10 à 30 minutes pendant l’utilisation de Discourse. Seul un redémarrage de l’ordinateur permet de sortir de cet état.

J’utilise Puma, Ruby 2.4.5 et la dernière version de Discourse.

Ce que j’ai essayé :

  • Réinstaller la distribution WSL
  • Créer un lien symbolique vers le dossier tmp en dehors du dossier partagé
  • Exécuter bundle exec puma --worker 1

WSL pose problème et constitue in fine une impasse pour Microsoft. Je vous recommande d’installer WSL2, qui fonctionne bien et n’est que 5 à 20 % plus lent qu’un double démarrage.