À moins d'anticiper un trafic extrêmement élevé, cela ne devrait pas poser de problème. C'est la façon standard dont la pagination est faite - si vous trouvez que vous avez des problèmes de performance, reconsidérer la façon dont vous faites les choses alors. Il n'y a aucune raison d'optimiser prématurément. N'invitez pas quelqu'un à venir ici et à citer Knuth, s'il vous plaît!
Une alternative consiste à envoyer plusieurs pages de données au client en même temps, puis à paginer avec Ajax. L'inconvénient est que la première requête prendra un peu plus de temps pour créer et envoyer, utiliser plus de bande passante, et il y a de fortes chances que de nombreux utilisateurs n'iront jamais au-delà de la première page d'une requête donnée.
Si vous cherchez à augmenter l'efficacité ou la performance en général, c'est un sujet assez vaste. Vous pouvez ajouter l'indexation, la mise en cache, explorer d'autres magasins de données, ajouter des serveurs, etc. Vous pourriez dire, exécutez la requête pour obtenir 5 pages à la fois, stockez les résultats dans memcache, et accédez à ceux-ci jusqu'à ce que vous ayez besoin de 5 nouvelles pages.
Cela dépend de ce qui finit par être un goulot d'étranglement. Souvent, c'est quelque chose de différent de ce que vous attendiez, et souvent ce qui fonctionne comme une solution est également inattendu.
quel problème de performance anticipez-vous exactement? – bobah
Je pensais coz je demande chaque fois que l'utilisateur change la page (cliquez sur le bouton suivant, précédent) – jartaud