- Mailing Lists
- Contributors
- Odoo load balancing
Archives
- By thread 1419
-
By date
- August 2019 59
- September 2019 118
- October 2019 165
- November 2019 97
- December 2019 35
- January 2020 58
- February 2020 204
- March 2020 121
- April 2020 172
- May 2020 50
- June 2020 158
- July 2020 85
- August 2020 94
- September 2020 193
- October 2020 277
- November 2020 100
- December 2020 159
- January 2021 38
- February 2021 87
- March 2021 146
- April 2021 73
- May 2021 90
- June 2021 86
- July 2021 123
- August 2021 50
- September 2021 68
- October 2021 66
- November 2021 74
- December 2021 75
- January 2022 98
- February 2022 77
- March 2022 68
- April 2022 31
- May 2022 59
- June 2022 87
- July 2022 141
- August 2022 38
- September 2022 73
- October 2022 152
- November 2022 39
- December 2022 50
- January 2023 93
- February 2023 49
- March 2023 106
- April 2023 47
- May 2023 69
- June 2023 92
- July 2023 64
- August 2023 103
- September 2023 91
- October 2023 101
- November 2023 94
- December 2023 46
- January 2024 75
- February 2024 79
- March 2024 104
- April 2024 63
- May 2024 40
- June 2024 160
- July 2024 80
- August 2024 70
- September 2024 62
- October 2024 121
- November 2024 117
- December 2024 89
- January 2025 59
- February 2025 104
- March 2025 96
- April 2025 107
- May 2025 52
- June 2025 72
- July 2025 60
- August 2025 81
- September 2025 124
- October 2025 63
- November 2025 22
Contributors
Odoo load balancing
Hi community,
I'm looking for advice and experience regarding the topic of load balancing.
There are two unrelated cases in which I would like to use it:
1. Balancing over a pool of servers running Odoo
We have a client with a horizontal setup with a pool of 4 servers
running Odoo. Requests are now routed to the servers by means of
round-robin, but that's not very smart - I'd rather pass the load
to the server that I know has enough free workers, and perhaps
memory/CPU/IO available to take on a new task. I've looked around
and the only thing I've found so far is the UWSGI FastRouter:
https://uwsgi-docs.readthedocs.io/en/latest/Fastrouter.html. Does
someone have other suggestions?
2. Smart balancing over worker pools on one server
For a responsive Odoo you want to have many Odoo workers, but you don't want to run out of memory. This is a tradeoff. If you configure too few workers, your memory will sit idle, but if you configure many workers, you run the risk that occasional high memory requests (a heavy computation, a heavy report) come in and if by unlucky chance it's several at a time, your server can overload. Is there a load balancer or WSGI application server that can keep a track record of which requests generally take the most memory, and then throttle these requests to a limited "heavy pool" of Odoo workers that serve high-memory requests, whereas the "happy pool" will have many workers and process the trustworthy requests with much better responsiveness?
Sorry if this is not the right place to ask - I will be happy about any pointers.
-Tom
by Tom Blauwendraat - 12:26 - 31 Mar 2021
Follow-Ups
-
Re: Odoo load balancing
HAProxy?
Verstuurd vanaf mijn iPhone
Op 31 mrt. 2021 om 12:27 heeft Tom Blauwendraat <tom@sunflowerweb.nl> het volgende geschreven:
Hi community,
I'm looking for advice and experience regarding the topic of load balancing.
There are two unrelated cases in which I would like to use it:
1. Balancing over a pool of servers running Odoo
We have a client with a horizontal setup with a pool of 4 servers running Odoo. Requests are now routed to the servers by means of round-robin, but that's not very smart - I'd rather pass the load to the server that I know has enough free workers, and perhaps memory/CPU/IO available to take on a new task. I've looked around and the only thing I've found so far is the UWSGI FastRouter: https://uwsgi-docs.readthedocs.io/en/latest/Fastrouter.html. Does someone have other suggestions?
2. Smart balancing over worker pools on one server
For a responsive Odoo you want to have many Odoo workers, but you don't want to run out of memory. This is a tradeoff. If you configure too few workers, your memory will sit idle, but if you configure many workers, you run the risk that occasional high memory requests (a heavy computation, a heavy report) come in and if by unlucky chance it's several at a time, your server can overload. Is there a load balancer or WSGI application server that can keep a track record of which requests generally take the most memory, and then throttle these requests to a limited "heavy pool" of Odoo workers that serve high-memory requests, whereas the "happy pool" will have many workers and process the trustworthy requests with much better responsiveness?
Sorry if this is not the right place to ask - I will be happy about any pointers.
-Tom
_______________________________________________
Mailing-List: https://odoo-community.org/groups/contributors-15
Post to: mailto:contributors@odoo-community.org
Unsubscribe: https://odoo-community.org/groups?unsubscribe
by Willem Hulshof - 08:56 - 31 Mar 2021