Me preguntaba cuál es la razón detrás de la paginación. ¿Se usa porque disminuye la carga sobre los servidores ya que técnicamente limitaríamos la cantidad de filas devueltas por página?
Quería hacer algo sin paginación, pero dado que soy nuevo en esto (soy un aficionado) comencé a preguntarme si está bien técnicamente o no.
php
pagination
Sam Khan
fuente
fuente
Respuestas:
Hay varias razones para tener paginación, reducir la carga del servidor es solo una. Sin embargo, Stephen Orr plantea un punto válido: aún debe encontrar primero la cantidad de datos. Debe asegurarse de que esa consulta sea rápida y no cargue indebidamente su servidor.
Otras razones incluyen:
En ambos casos, no desea hacer que el usuario espere, ya sea por los datos que no van a ver o por todos los datos cuando podrían obtener uno con el procesamiento de algunos de ellos.
fuente
Varía según la implementación.
Acelerará la representación de una página, pero no necesariamente reducirá la carga en el servidor. La mayoría de los algoritmos de paginación ingenuos necesitan realizar una consulta primero para decidir cuántas páginas debe haber, luego consultar nuevamente para obtener el conjunto de resultados "paginado".
fuente
El mayor valor que obtiene de la paginación es mejorar la velocidad de su aplicación al:
1 - Limitación de datos transmitidos entre el cliente y el servidor. No tiene sentido leer 1000000 clientes si el usuario está buscando 10 de ellos.
2- Acelerar significativamente el rendimiento de la consulta al recuperar solo filas que pueden caber en la vista de un usuario. No tiene sentido leer 1000000 clientes si el usuario observará a los primeros 10 clientes.
3 - La paginación ayuda al proporcionar más datos nuevos. Si su aplicación muestra muchas filas de datos y el dominio de su aplicación requiere mucha actualización de las filas de datos en la tabla mostrada, es probable que para el momento en que vaya a la página 20 de la lista de páginas, los datos en algunas de las filas hubieran sido cambiado Piense en una aplicación que lea los precios de las acciones o las habitaciones disponibles en un hotel. No sirve de nada recuperar datos antiguos y colocarlos en el cliente.
La paginación es una estrategia que, en combinación con el filtrado y su comprensión de cómo el usuario final necesita del escenario particular (que se espera que conduzca a un buen diseño para satisfacer esta necesidad) mejorará en gran medida la aplicación, especialmente cuando varios usuarios acceden a la base de datos concurrentemente
La paginación no siempre es trivial para programar. En algunos casos es simple, pero a veces es muy complejo escribir para que la consulta SQL se ejecute sin realizar un escaneo completo de la tabla. Por supuesto, esto depende de sus índices, condición de filtro y su declaración Where.
fuente
La paginación, en mi opinión, es la madre de todas las optimizaciones prematuras. Está absolutamente bien escribir su sitio sin paginación.
Si después de la publicación descubre que está cargando demasiados datos en una llamada, o que sus usuarios tienen que esperar la información que desean porque está ocupado cargando datos que no desean, continúe y escriba una solución Ajax que solo carga la página a medida que las personas se desplazan hacia abajo (ver: Twitter, Tumblr, búsqueda de imágenes de Google).
Editar: El segundo párrafo anterior se escribió con la suposición de que una respuesta común sería "pero si sabe que va a paginar en algún momento, también puede hacerlo temprano, en lugar de perder el tiempo desarrollando algo que va a tirar lejos."
Además de ser la madre de todas las optimizaciones prematuras, creo que la paginación es una pesadilla UX y que hay mejores soluciones que no requerirían mucho desarrollo adicional en la parte superior de la página completa.
A pesar de la cantidad de votos negativos, dejo esta respuesta aquí porque mantengo el sentimiento, aunque puede que no haya sido mi mejor escrito.
fuente