跳至内容
菜单
此问题已终结
2 回复
15827 查看

I have been testing running Odoo in both threaded (workers = 0) and multiprocess mode (workers > 0). My environment has 4 cpus so I have set workers = 9 (# of cpu x 2 +1). The user interfaces is much less responsive in multiprocess mode. And some tasks even timeout in multiprocess mode (ie adding several modules at once). I have also tested using fewer workers (workers = 5) and the UI is a bit more responsive but still much slower than threaded mode.

The Odoo documentation says that multiprocess is meant for production use. Why would this mode be slower?

形象
丢弃
最佳答案

Check in the log if the instances are restarting. The way the multithreaded server works, if the thread reaches the resources limit, the trhead is killed and new thread is created. This sequence of killing and recrating new threads is what ususally makes the multi-worker server slow.

The parameters to controll the resources which you would need to adjust in order to tunethe multiinstance are:

limit_memory_soft
limit_memory_hard
limit_time_real
limit-time-cpu
limit-request

In my experiance the OS X and FreeBSD require the memory limits to be set more higher than on lynux in order to improve the performance.

形象
丢弃
最佳答案

I did the same with an Amazon instance (single core, 2GB RAM), I set the workers at 4, and also some others parameters: 

  • workers = 4
  • limit_time_real = 300
  • limit_time_cpu = 300

The last 2 parameters are the time limit for each request (correct me if I'm wrong) and CPU usage per request.

In my case, it works much more smooth than before.

形象
丢弃
相关帖文 回复 查看 活动
1
8月 23
2806
1
8月 16
10363
1
12月 22
5498
0
2月 18
3170
0
1月 16
4610