noticies / Desenvolupador

Configurant Koo per obtenir el màxim rendiment

Configurar el Koo per a un rendiment màxim

No hi ha res de nou en aquesta entrada del blog, però serà útil per a qualsevol persona que vulgui provar o desplegar el Koo.

Per fer volar el Koo, necessitaràs dos mòduls de servidor: pyro i koo. Vegem com es poden instal·lar i com s'han de configurar per obtenir els millors resultats.

Pyro

El mòdul pyro és molt fàcil d'utilitzar. El pots descarregar de la ubicació habitual. Un cop el tinguis al servidor, només cal instal·lar-lo en una base de dades.

A partir d'aleshores, cada vegada que iniciïs aquesta base de dades, el protocol Pyro estarà disponible al port 8071.

És important tenir en compte que cal iniciar el servidor amb aquesta base de dades perquè Pyro estigui disponible. Necessitaràs alguna cosa com això:

bash ./openerp-server.py -d "database_with_pyro_installed"

En cas contrari, hauràs d'iniciar sessió a la base de dades mitjançant un altre protocol abans que el servei estigui disponible.

És possible canviar el port on escolta el mòdul afegint la línia següent al fitxer de configuració del servidor OpenERP:

ini pyroport = 4500

Instal·lar aquest mòdul i utilitzar-lo al Koo proporcionarà, per si sol, una millora significativa del rendiment. Has de seleccionar el protocol mitjançant el botó Canvia del diàleg d'inici de sessió.

La millora és especialment notable en xarxes lentes, o més precisament, en xarxes amb alta latència, com ara ADSL o 3G.

També val la pena utilitzar-lo en una xarxa local, fins i tot quan no hi ha problemes de rendiment aparents, perquè dona als usuaris una sensació notable d'immediatesa.

Koo

Igual que pyro, el mòdul koo es pot descarregar de la ubicació habitual.

Instal·lar simplement el mòdul, sense cap configuració addicional, ja proporciona avantatges al Koo.

En alguns casos, els usuaris poden intentar ordenar una vista de llista mitjançant un camp que no es pot ordenar, generalment perquè és un camp funcional que no existeix a la base de dades.

Sense el mòdul koo, el Koo no té manera de saber-ho per endavant i simplement intentarà ordenar la llista. Quan rep una excepció del servidor, la ignora i informa l'usuari que el camp no es pot utilitzar per ordenar.

El problema és que les versions actuals d'OpenERP poden trigar força temps a retornar una excepció, cosa que pot fer que el Koo sigui inutilitzable en algunes circumstàncies.

Així doncs, recorda: com a mínim, instal·la el mòdul si tens intenció d'utilitzar el client Koo.

Un altre avantatge que s'obté simplement instal·lant el mòdul és l'emmagatzematge de la configuració de les vistes per a cada usuari.

Això significa que la informació següent s'emmagatzema al servidor i es restaura la propera vegada que l'usuari obri la vista:

  • L'ordre i l'amplada de les columnes a les vistes de llista.
  • L'última ubicació utilitzada per obrir un fitxer d'un camp binari.
  • Les galetes rebudes mentre es navega per la web mitjançant un camp web incrustat.

Tanmateix, aquesta entrada del blog tracta sobre el rendiment del Koo, així que vegem com es pot ajustar perquè funcioni molt més ràpid.

Hauràs de crear una nova entrada al diàleg de configuració del Koo, situat a:

text Administration → Configuration → Koo → Settings

Koo Settings dialog

Diàleg de configuració del Koo

Permetre la memòria cau del client

Si et preocupa el rendiment, probablement voldràs activar l'opció Permetre la memòria cau del client.

Això permet que el Koo mantingui vistes, accions i altra informació a la memòria, de manera que només caldrà consultar el servidor una vegada.

Pots configurar quines vistes no s'han d'emmagatzemar a la memòria cau a:

text Administration → Configuration → Koo → View Cache Exceptions

Això pot ser útil perquè algunes vistes poden ser alterades per l'entrada de l'usuari. Excloure-les de la memòria cau evita que els usuaris hagin de seleccionar Usuari → Esborra la memòria cau cada vegada que facin un canvi que afecti la vista.

Aquest és el cas de la vista de contactes, on els usuaris poden canviar els títols de companyia o de contacte disponibles a:

text Partners → Configuration → Titles

La configuració adequada depèn de les teves necessitats. Normalment no afegim cap excepció perquè la millora de rendiment que proporcionen les vistes amb memòria cau és força significativa.

Límit

Un altre paràmetre que potser voldràs ajustar és Límit.

Això indica al Koo quants registres ha de carregar alhora.

En alguns casos, per exemple, en vistes de llista que contenen camps lents de processar, potser veuràs una millora si redueixes aquest valor.

Tanmateix, el valor no hauria de ser inferior al nombre de files que caben a la pantalla. En cas contrari, el Koo farà dues crides al servidor cada vegada que s'obri una vista de llista, empitjorant el problema en lloc de millorar-lo.

El valor per defecte és 80.

Mode d'ordenació

En alguns casos, potser voldràs establir el Mode d'ordenació només per als elements visibles.

Això fa que el Koo es comporti més com el client GTK, carregant només el nombre de registres especificat per Límit, en lloc de fer tots els registres disponibles per a l'usuari.

Nosaltres mai no utilitzem aquesta opció, i es poden obtenir molt bons resultats amb l'opció per defecte Tots els elements.

Interval d'actualització de les sol·licituds

En alguns casos, també potser voldràs establir Interval d'actualització de les sol·licituds a 0.

Això desactiva les sol·licituds que fa el Koo per actualitzar la informació que es mostra a la barra d'estat.

Assignació de la configuració als rols

Un cop hagis configurat tots els paràmetres desitjats, els hauràs d'assignar a un o més rols.

Això és una cosa que probablement millorarem en el futur. De moment, recomano assignar la configuració a només un rol i assignar aquest rol a l'usuari.

Si has creat la configuració per al teu propi usuari, hauràs de tancar la sessió i tornar-la a iniciar abans que els canvis tinguin efecte.

Espero que això aclareixi com configurar el Koo per a un entorn de producció!