Toutes mes tables utilisent InnoDB, et j’ai défini sphinx sql_range_step au minimum, ce qui est 128. Cela a beaucoup amélioré les performances, mais reste très lent si vous faites une demande juste après le début d’une nouvelle étape.
Je suis sûr que cela fonctionnerait parfaitement si je pouvais réduire le pas de la plage à 10 ou à quelque chose du genre, mais quelqu'un a constaté que la valeur minimale est codée en dur et qu'il n'y a aucun moyen de la modifier (autre que l'édition du source).
Je me demandais donc s'il existait un moyen de gérer cela directement à partir de MySQL. Lorsque j'indexe une base de données, les autres bases de données ne sont pas affectées. Par conséquent, ce n'est pas le serveur entier qui a été ralenti, mais uniquement la base de données que j'indexe.
Y at-il un moyen de donner moins de priorité à un utilisateur ou une requête, ou quelque chose?
la source