Avisos y Noticias sobre el servidor y el Foro

Publicado por DAX, Febrero 26, 2008, 12:02:28

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

kaene


vitote6


pavazzio

Me parece que estaria bueno que a esos consejos que dio DAX acerca de las busquedas y de no "darle masa" al recargar, se pusieran en un post aparte de lectura "obligatoria" (por asi decirlo) como si fuese un FAQ. Así llegaria a mas users y todos podriamos colaborar a conciencia para que no argento no caiga.

Saludos
En barrio de ricachones sin armas ni rencores. Es sólo plata y no amores

FunkMan

Gracias por la info DAX, monje negro y demás.

Espero no haberme pasado por alto algún post que diga esto mismo:
Mi opinión es la de no sacar las búsquedas, sino restringir el tiempo entre una y otra. He visto muchos foros hacer esto y lo único malo es cuando uno se confunde al escribir, ya que hay que esperar esos X segundos/minutos para volver a hacer otra búsqueda. Así también se evitaría el caso de, por ejemplo, abrir muchas pestañas y realizar una búsqueda en cada una de ellas, sobrecargando considerablemente el server.

Personalmente uso mucho los índices, pero a veces se necesita la función de búsqueda.


Gracias por todo el laburo que hacen día a día.

Ed.

DAX

#49
Si bien en el seguimiento que se le está haciendo al foro se nota que ha mejorado bastante respecto de cuando se inició este thread, aún faltan cosas que solucionar, pero, afortunadamente, todo indica que estamos más cerca de lograr un mejor funcionamiento.

En el día de ayer se efectuaron algunos trabajos, por ese motivo el foro estuvo "en mantenimiento" por un largo rato.

1) se detectó que la Base de Datos tenía inconsistencias y se procedió a repararlas, al ser una DB bastante cargada (900MB) esto demando su buen tiempo ya que la reparación de las distintas tablas, el reordenamiento de las mismas y los procesos de reconteo de post y threads demandan su tiempo en estas condiciones.

2) Se hizo un cambio de código en el soft del foro (SMF) con el objeto de habilitar tiempos de espera entre las busquedas que realizan los usuarios, esto es, desde ahora, una vez realizada una busqueda, al igual que con los posteos, habrá que esperar 30 segundos para poder realizar una nueva busqueda. Esto es para evitar que se proveque un flood a la DB si varios usuarios realizan busquedas consecutivas en forma conjunta.

3) Se instaló y activó un cache de aceleración para smf (xcache) que, si bien no es nativo, necesitó que se modificara también parte del código en algunos módulos de SMF. Luego de un tiempo en marcha, se vió que el consumo de recursos por la utilización del cache producia un efecto contrario al buscado y que lentificaba bastante el funcionamiento del foro, por lo cual, se procedió a desactivarlo y dejarlo en stand by mientras se busca documentación sobre su utilización para afinarlo y ver si mejora el rendimiento del foro.

4) Se revisaron estadísticas de uso y funcionamiento del servidor Mysql y en base a éstas, se procedió a reconfigurarlo para mejorar su perfomance.

Bien, en sintesis, hasta aquí llegamos al día de hoy, espero que el foro no les esté dando tanto problemas como hace un tiempo atrás y que pronto se corrijan los problemas que tanto nos joden.

SaludOS/2

Camello_AR

Gracias DAX, que seria de argento sin vos y tu dedicación (y conocimiento, pq yo puedo dedicar 23 horas al día a tratar de hacerlo andar y no habría caso)

BetoRock

DAX sin palabras todo lo que haces por argento verdaderamete.

Muchas veces no fue enserio.... este si va para vos de todo corazon :chavo:

elrosti

DAX, Muchas gracias nuevamente. Es verdad lo que decís que el foro últimamente está funcionando mejor, al menos no me ha pasado de encontrar el foro caido.

Hay una cosa que me quedó picando, dijiste que la base de datos tenia inconsistencias ¿ esto se produce al momento de las inserciones/modificaciones de los registros? ¿ o es que luego por X motivo las tablas se corrompen ?. A lo que me refiero es ¿ se puede hacer algo para evitar que no vuelva a pasar ?.

Saludos.
Yo no lo quería creer..... pero ella me convenció.

DAX

Cita de: elrosti en Abril 01, 2008, 08:38:48
DAX, Muchas gracias nuevamente. Es verdad lo que decís que el foro últimamente está funcionando mejor, al menos no me ha pasado de encontrar el foro caido.

Hay una cosa que me quedó picando, dijiste que la base de datos tenia inconsistencias ¿ esto se produce al momento de las inserciones/modificaciones de los registros? ¿ o es que luego por X motivo las tablas se corrompen ?. A lo que me refiero es ¿ se puede hacer algo para evitar que no vuelva a pasar ?.

Saludos.

Cómo bien sabes, cuando se graba algún dato en la DB, se guarda en distintas tablas, según lo que se esté grabando, por decir algo en forma simple, cuando posteas algo, SMF, por un lado, mantiene temporalmente en la tabla de sesiones los datos de tu sesión, que luego borra cuando te deslogueas o actualiza transcurrido cierto tiempo y aún seguís en línea, el post en sí que hiciste, actualiza el contador de post, tanto el general como el tuyo personal, actualiza una tabla con palabras clave que utiliza para las funciones avanzadas de busqueda y actualiza otras tablas menores.

Bien, cuando se satura el servidor, ya sea apache o mysql, estas operaciones quedan en espera y lockeando las tablas y muchas veces, no terminan de concretarse porque se provoca un timeout en el servidor MySql o simplemente, porque ante el "cuelgue" se reinicia manualmente el servicio y ante esto, sucede que algunas tablas se actualizan y otras no.

Como Mysql no posee Integridad referencial, correr un repair desde el mismo servidor Mysql (ya sea desde su consola o desde algún utilitario que se conecte a la DB) sólo corrije los problemas de integridad de cada table en forma separada pero no las relaciones entre tablas.

Afortunadamente, SMF tiene en cuenta esto (este es uno de los tantos motivos y, quizas, el principal, por el que se decidió en su momento migrar de phpbb a smf) y en la consola de administración hay herramientas que permiten chequear y corregir los errores referenciales en la db.

Y yendo a tu pregunta específica, hasta donde puedo ver, tratándose de Mysql con el volumen de tráfico que estamos manejando, la única solución es seguir monitoreando el servidor, estudiar periódicamente las estadísticas de carga, de transacciones, buscar aquellos parámetros que no esten bien afinados e ir probando configuraciones para los mismos hasta encontrar la configuración adecuada que deje de causar problemas.

Es cuestión de paciencia, los procesos estadísticos sobre la DB para conocer el desenvolvimiento de su configuración necesitan un mínimo de 48 hs continúas de funcionamiento del servidor mysql, asi que no queda otra que tocar algún parámetro, rogar que no se caiga el servidor y tener que reiniciarlo, dejar pasar la mayor cantidad de tiempo posible (a mayor tiempo de uptime del servidor, mejores estadísticas para analizar), ver los resultados y aplicar los cambios necesarios.

Por lo pronto, llevando ya 16 hs on line el servidor mysql, desde su último reinicio, ya hemos solucionado un problema, que era el crecimiento desmesurado de la tabla de sesiones. Así que el parche en el código de SMF fué efectivo y ya tenemos un problema menos del cual preocuparnos.

SaludOS/2

elrosti

#54
DAX, entiendo perfectamente. Sinceramente no estoy muy seguro si lo que voy a decir es correcto, pero bueno, tu me correjiras.

No estoy al tanto de como funciona en PHP y SMF particularmente, pero supuse que ambos manejaban bien el tema de las UTL, es decir, un conjunto de instrucciones que afectan a varias tablas y registros, las mismas se ejecutan todas o no se ejecuta ninguna.

Si una de las instrucciones falla se debe ejecutar un "rollback" para evitar inconsistencias en la integridad referencial de las tablas, esto hace que no tengan efecto los cambios realizados desde el ultimo "commit".

Si todas las instrucciones se ejecutan correctamente se ejecuta un "commit" que es lo que "confirma" todas las instrucciones desde el ultimo commit realizado.

Como dije antes, carezco de conocimientos de como es el tema con PHP y SMF, solo se que trabajando con JAVA y MySQL no he tenido problemas en este aspecto.

Saludos.

PD: La explicación sobre lo que es un commit, rollback y UTL no es para vos DAX  :P, es para que el que tenga ganas de leer pueda entender algo de lo que hablo  :P.
Yo no lo quería creer..... pero ella me convenció.

ThecaTTony

Muchas gracias por todo lo que haces DAX.

4kstore




DAX

#57
Ante todo, les pido disculpas a todos los usuarios por dejar el foro tanto tiempo fuera de línea pero los trabajos que se realizaron, se complicaron mas de la cuenta y demandó toda la tarde poder llevarlos a cabo y hacer que funcione correctamente.

Si bien, no van a notar ningún cambio por el momento, se han efectuado algunas reestructuraciones a nivel servidor para poder poner en marcha algunas cosas que desde hace tiempo están en carpeta.

Por ello, se ha instalado nuevo soft y nuevas opciones que le harán la vida mas fácil a los administradores y permitiran que tengan un control mas cómodo del hosting y del server.

Además, se han efectuado algunas pruebas (simulaciones) para hacer el futuro upgrade del foro a las últimas versiones del soft correspondiente y nos hemos encontrado con varios problemas, por lo cual, seguiremos testeando el proceso de upgrade hasta estar seguros que se puede realizar en el ambiente de producción en forma segura.

Si alguien nota algún problema de ahora en mas, por favor, comuniquelo en este post o envíandome un PM.

EDIT:

Ahora, con un poco más de tiempo.

Seguramente muchos notarán que comienzan a recibir mails de argento (probablemente algunos atrasados). No se asusten ni se emocionen, al instalar el nuevo soft, éste activo todos los servicios del servidor y puso el mailserver de nuevo en línea. Esta vez, bajo el control del soft de gestión y esperamos que funcione correctamente y sin provocar saturaciones en el servidor en general.

También, si el tráfico se vuelve denso, especialmente en los accesos a la base de datos, podrán recibir algún mensaje de error de conexión a la base de datos. Tampoco se asusten, pero significará que se han excedido la cantidad de conexiones al servidor PostgreSQL que actúa de control y filtro para los demás servicios, por ende, sólo es cuestión de esperar y no reintentar cargar la página continuamente hasta que se vayan liberando conexiones.

SaludOS/2

El Pitu


pavazzio

fue la tarde mas larga de mi vida jajaj. Argento, cada dia te quiero más
En barrio de ricachones sin armas ni rencores. Es sólo plata y no amores