Contributors mailing list archives

contributors@odoo-community.org

Re: Performance issues for all users in Odoo 9 when a single user creates a heavy request

by
Axel Mendoza
- 13/11/2017 13:01:00

Hi Jordi and everyone
If you have performance issues you should try to use the Odoo Gevented version. Seems that nobody knows about that not even Odoo S.A but that way delivers the best performance of Odoo even with low resources like ram. I have more than one year using it in several production systems and with a SaaS implementation with Odoo and the results are amazing and mostly because of the non-blocking nature of Gevent greenlets. Also odoo have support for that but seems that never have been consider it as a full replacement of the standard way of deploy Odoo. Forget about your configured workers for moment and try to run Odoo the same way that Odoo itself it's running the longpolling gevented Odoo instance. It's simple, just run it like this
#for odoo 10 and 11 use
odoo.py gevent --config /path/to/your/odoo.conf
#for odoo 8 and 9 use
openerp-gevent.py --config /path/to/your/odoo.conf

Then in your odoo conf and reverse proxy you should use the config option longpolling_port instead of xmlrpc_port

For openerp 7 i have developed a version of openerp-gevent.py that properly boostrap Odoo with gevent
This way of running Odoo just lacks a few components like:
- python logging integration with gevent
- Odoo cron "workers"
I have solved those and a few others. I should write more about this latter and publish a more deep analysis on this. This is something in advance so maybe you or others could check if that solve the existing performance issues.
Among the benefits are high number of concurrent connections that your Odoo instances will be able to handle. No need for a separated longpolling gevented odoo instance running because you already will be running that one, no separated /longpolling/ reverse proxy config, speed increased notabily. Better resource usage, mostly the ram. You will be able to run more with less. Non-blocking will be visible on previously blocking operations that freezes Odoo until it finish it, among others improvements
Best regards


On Mon, Nov 13, 2017, 08:02 Jordi Ballester Alomar <jordi.ballester@eficent.com> wrote:
Thanks Joël! 

Regards,
Jordi.

On Mon, Nov 13, 2017 at 1:16 PM, Joël Grand-Guillaume <joel.grandguillaume@camptocamp.com> wrote:
Hi Jordi, 


A recent talk with Fabien teach me that in their case, they always put enough ram on the server to allow to load the whole DB in ram! With the proper postgresql setup, It seems to indeed improve a lot this issue.

Otherwise, we also had several time to split the report printing in several smaller reports to avoid such issue. 

Hope this helps, 

Joël 
Le 9 nov. 2017 18:32, "Jordi Ballester Alomar" <jordi.ballester@eficent.com> a écrit :
Dear contributors,

We have often found a problem of performance that starts when a user triggers a heavy request - e.g. executing a long, heavy accounting report - this seems to be negatively impacting to the performance of other users. 

I would appreciate if someone can help me to get to know a bit more what can be the possible cause of this. Performance issue in Postgres? In Odoo?

We are putting together various performance metrics to better understand the potential causes according to the various Odoo performance guidelines that Odoo has been publishing in the past.

Regards,
--

_______________________________________________
Mailing-List: https://odoo-community.org/groups/contributors-15
Post to: mailto:contributors@odoo-community.org
Unsubscribe: https://odoo-community.org/groups?unsubscribe

_______________________________________________
Mailing-List: https://odoo-community.org/groups/contributors-15
Post to: mailto:contributors@odoo-community.org
Unsubscribe: https://odoo-community.org/groups?unsubscribe




--
Jordi Ballester Alomar
CEO & Founder | Eficent

_______________________________________________
Mailing-List: https://odoo-community.org/groups/contributors-15
Post to: mailto:contributors@odoo-community.org
Unsubscribe: https://odoo-community.org/groups?unsubscribe