La base de données SQLite a la réputation de mal supporter d'avoir de nombreux accès simultanés. Sauf que depuis quelques versions (la 3.7.0... de 2010 (!)), elle possède le WAL, un mécanisme qui lui permet de gérer très bien les accès concurrents (les lectures ne bloquent plus les écritures, et les écritures ne bloquent plus les lectures). L'article en explique le fonctionnement.