El 13/06/14 10:10, [email protected] ha escrit:
Buenos días,

ahora que ya llevamos un tiempo trabajando con Tryton nos estamos fijando en que hay una serie de procesos que, almenos en nuestra instalación son bastante lentos, y quería saber si le pasa a alguien más o si el problema es de nuestra instalación.

La versión que tenoemos instalada en el servidor es la 3.0, mientras que los clientes usados tanto para Windows como para Linux són la 3.0.2.

Me suena que en la versión 3.2 se realizó alguna mejora para mejorar el rendimiento de estas líneas. Primera recomendación actualizar :)


Pongo algunos ejemplos para explicar lo que nos encontramos:

*1. Módulo sale:* al abrir el módulo de *"Ventas->Ventas->Pestaña Todo"*, tenemos 621 registros, pero la carga de la tabla necesita unos 6 segundos. A nosotros nos da la sensación que són muchos segundos para tan pocos registros, pero no sé si es normal o no.

En mi maquina en local con 8GB de RAM y con la versión 3.2, con una BD con ~8000 ventas (y 50.000 lineas de ventas), tarda 1 segundo en abrir esta misma pestaña.
*2. Módulo project_helpdesk:* al abrir el módulo *"Proyectos->Soporte->Todos los soportes->Pestaña Todos los soporte", *tenemos 1079 registros (1000 en la 1a página y 79 en la segunda), y tarda unos 27 segundos en cargarla.
No tengo este módulo instalado, però me parece una barbaridad 27 segundos para cargar 1000 registros.

Echando un vistazo al código la función get_lask_talk puede ser el causante de tu problema, porqué para cada registro que cargas se esta haciendo una llamada al modelo project.helpdesk.talk, que supongo que tendréis unos cuantos registros más....

Ademas el campo num_attachment hace exactamente lo mismo però para la tabla de attachments....

Estas dos funciones se puede optimizar utilizando una consulta para calcular un conjunto de registros utiliando la primera variante de [1], y lo notaréis especialmente en las vistas de lista, cómo es tu caso.

I así con algunos otros módulos: account_invoice...

Pensábamos que quizás era un problema del servidor, y por ello lo cambiamos a una máquina con 16Gb de RAM y 8 CPU.... y el problema persiste.

Maquina virtual o dedicada?

Así pues no sabemos qué problema puede haber o si simplemente así es su funcionamiento.

También hemos probado de usar la propiedad para limitar el número de registros en el cliente (a 100, por ejemplo), pero los tiempos de carga son los mismos.

¿Sabéis si hay alguna forma de optimiar el rendimiento?
Optimiza postgresql. Cuanta RAM le tenéis assignada a PostgreSQL? Ten en cuenta que los parámetros por defecto de postgresql són muy conservadores, por lo que si no los modificas normalmente no se aprovechará todo el potencial de la màquina.

Hay un script llamado pg_tune [2] que te ayuda a realizar esta configuración.

[1] http://doc.tryton.org/3.2/trytond/doc/ref/models/fields.html?highlight=function#trytond.model.fields.Function.getter
[2] https://github.com/gregs1104/pgtune

--
Sergi Almacellas Abellana
www.koolpi.com
Twitter: @pokoli_srk

Responder a