49 votes

Pagination: Côté Serveur ou Côté Client?

Que vaut-il mieux gérer la pagination? Côté serveur ou le faire de manière dynamique à l'aide de javascript?

Je suis en train de travailler sur un projet qui est lourd sur l'ajax et en tirant dans la dynamique de données, j'ai donc travaillé sur un script javascript système de pagination qui utilise le dom - mais je commence à penser qu'il serait mieux pour tout gérer côté serveur.

Quelles sont les pensées?

74voto

Cory House Points 5014

La réponse dépend de vos priorités et de la taille de l'ensemble de données à paginé.

Côté serveur la pagination est le meilleur pour:

  • Grand ensemble de données
  • Plus rapide chargement initial de la page
  • L'accessibilité pour ceux qui ne sont pas en cours d'exécution javascript

Côté Client, la pagination est le meilleur pour:

  • Petit jeu de données
  • Plus vite les chargements des pages suivantes

Donc, si vous êtes de la pagination pour des raisons principalement esthétiques, il est plus logique de le gérer côté client. Et si vous êtes à la pagination de réduire le temps de chargement initial, côté serveur est le choix évident.

Bien sûr, côté client, l'avantage sur les temps de chargement des pages diminue si vous utiliser Ajax pour charger les pages suivantes.

10voto

Mehrdad Afshari Points 204872

De le faire côté client fera de votre utilisateur de télécharger toutes les données au premier abord, ce qui pourrait ne pas être nécessaire, et à retirer le principal avantage de la pagination.

La meilleure façon de le faire pour ce genre d'applications AJAX est de faire appel AJAX au serveur pour la page suivante et ajouter de mise à jour de la page en cours à l'aide de script côté client.

7voto

Diodeus Points 67946

Si vous avez des pages de grande taille et un grand nombre de pages, vous feriez mieux de demander des pages dans des segments à partir du serveur via AJAX. Afin de laisser le serveur faire de la pagination, en fonction de votre URL de la requête.

Vous pouvez aussi chercher les prochaines pages, l'utilisateur sera susceptible de vue afin de rendre l'interface semble plus réactif.

S'il y a seulement quelques pages, la saisissant tous les up-front et de la pagination sur le client peuvent être un meilleur choix.

3voto

JW. Points 17361

Voulez-vous dire que votre JavaScript a toutes les données en mémoire, et montre une page d'un temps? Ou qu'il télécharge à chaque page à partir du serveur en tant que de besoin, à l'aide d'AJAX?

Si c'est le cas, vous pouvez avoir besoin aussi de réfléchir sur le tri. Si vous effectuez un tri à l'aide de JavaScript, vous ne serez en mesure de trier les pages une à une, ce qui n'a pas beaucoup de sens. Si votre tri doit être fait sur le serveur.

3voto

Otávio Décio Points 44200

Côté serveur envoie au client juste assez de contenu pour la vue actuelle.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X