elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [Pregunta]: Optimizar tabla notificaciones.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: Optimizar tabla notificaciones.  (Leído 2,460 veces)
Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
[Pregunta]: Optimizar tabla notificaciones.
« en: 21 Mayo 2021, 03:47 am »

Básicamente tengo una tabla en mi base de datos que almacenará todas las notificaciones que pudiera llegar a tener cada usuario.
Se me ocurrió una idea para optimizar esta tabla en específico que sería que al llegar a las 1.000 notificaciones ya no pueda seguir almacenando más por lo menos para ese usuario.

Quiero decir, tengo 1.000 notificaciones y cuando se agregue una nueva notificación se va a eliminar la más vieja. Seguiremos con 1.000 notificaciones, independientemente si estén vistas o no.

Personalmente me parece un poco exagerado 1.000 registros, yo haría 300 o 150. ¿Qué opinan?


En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: [Pregunta]: Optimizar tabla notificaciones.
« Respuesta #1 en: 21 Mayo 2021, 13:35 pm »

Más interesante que fijar una cantidad, es fijar una antigüedad.

Por ejemplo almacenas las notificaciones durante 1 mes... 15, 10, 7... días. Puede ser un valor dependiente de las notificaciones diarias medias que que tenga un usuario. Un usuario con muy pocas notificaciones, podría mantenérselo durante 1 mes... los usuarios con notificaciones muy activas, quizás baste mantenerlas una semana.

Lo importante es considerar que nadie tendrá interés (habitualmente) en consultar una notificación de 1 mes atrás si entre esa y la última median 5000 notificaciones, en cambio es algo tolerable para alguien que solo haya recibido 20 notificaciones en ese mes.

También puede shacerlo mixto, eliminar lo que sobrepase cierto número de notificaciones o cierta antigüedad aunque no se alcance esa cantidad.

...y preferiblemente a eliminar solo una, borra la mitad más vieja cada vez. Si solo borras una cuando esté la bandeja llena, tendrás que constantemente se estarán borrando notificaciones, si hay mucha actividad, la base de datos no tendrá 'descanso'.

Con algo de prueba y error, acabarás encontrando un punto que puedas considerar acertado...


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Cuál es la diferencia entre la tabla sesión y la tabla usuarios?
Desarrollo Web
zagk 1 2,593 Último mensaje 1 Mayo 2018, 19:55 pm
por #!drvy
[Pregunta]: Notificaciones PUSH.js
Desarrollo Web
Leguim 0 1,391 Último mensaje 12 Marzo 2019, 06:18 am
por Leguim
[Pregunta]: Notificaciones vistas
Desarrollo Web
Leguim 2 1,672 Último mensaje 6 Agosto 2019, 17:42 pm
por Leguim
[Pregunta]: Sugerencias (Optimizar)
Desarrollo Web
Leguim 2 2,018 Último mensaje 16 Octubre 2019, 22:58 pm
por Leguim
[Pregunta]: Obtener tamaño de una tabla de una base de datos.
Desarrollo Web
Leguim 1 2,233 Último mensaje 26 Agosto 2020, 08:20 am
por Agente Naranja
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines