Skip to Content
Menu
This question has been flagged

I have Odoo 8.0 installed using Docker and nginx, my problem is that all operations take a crazy time to be performed.

here is my configs:

server's specs

* CPU cors = 8

* RAM= 32GB

----------------------

odoo.conf​​

[options] 
; This is the password that allows database operations: 
admin_passwd = **** 
db_host = db 
db_port = 5432 
db_user = pg 
db_password =****
db_template = template1 
db_maxconn = 90000 
mangento_databases = mangento 
;openpgpwd 
addons_path = /opt/odoo/sources/odoo/addons,/opt/odoo/sources/odoo/addons1_2beta/addons_std/,/opt/odoo/sources/odoo/addons1_2beta/addons_pro/,/opt/odoo/sources/odoo/addons1_2beta/addons_ent/,/opt/odoo/sources/odoo/addons1_2beta/ad$ 
; xmlrpc_port = 9090 
data_dir = /opt/odoo/data 
proxy_mode = True 
max_cron_threads = 1 
logfile = /opt/odoo/etc/odoo.log 
;log_db = True 

timezone = False 
translate_modules = ['all'] 
unaccent = False 
without_demo = False 
workers = 11 
xmlrpc = True 
xmlrpc_interface = 
test_file = False 
test_report_directory = False 

longpolling_port = 8072 
osv_memory_age_limit = 1.0 
osv_memory_count_limit = False 

limit_memory_hard = 8858370048 
limit_memory_soft = 7381975040 
limit_request = 8192 
limit_time_cpu = 4069 
limit_time_real = 4069 
;max_cron_threads = 6 

list_db = True 
log_db = False 
log_db_level = warning 
log_handler = :INFO 
log_level = error 
logrotate = True
 --------------------------------------------------------

postgres.conf

​x_connections = 11700 
shared_buffers = 2GB 
effective_cache_size = 6GB 
maintenance_work_mem = 512MB 
checkpoint_completion_target = 0.7 
wal_buffers = 16MB 
default_statistics_target = 100 
random_page_cost = 4 
effective_io_concurrency = 200 
work_mem = 233kB 
min_wal_size = 1GB 
max_wal_size = 2GB 
max_worker_processes = 2
------------------------------------------​

nginx.conf

user www-data; 
worker_processes auto; 
pid /run/nginx.pid; 

events { 
       worker_connections 768; 

http { 
       sendfile on; 
       tcp_nopush on; 
       tcp_nodelay on; 
       keepalive_timeout 65; 
       types_hash_max_size 2048; 


       include /etc/nginx/mime.types; 
       default_type application/octet-stream; 
       ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE 
       ssl_prefer_server_ciphers on; 
       access_log /var/log/nginx/access.log; 
       error_log /var/log/nginx/error.log; 
       gzip on; 
       gzip_disable "msie6";  
       include /etc/nginx/conf.d/*.conf; 
       include /etc/nginx/sites-enabled/*; 

I don't know how to optimize the system, any help with some explanation please!
Avatar
Discard
Best Answer

I think Your setup for long-polling and workers need to be updated in Nginx.Here I can share with you the docs for setting long-polling and workers properly.


  • Rule of thumb : (#CPU * 2) + 1
  • Cron workers need CPU
  • 1 worker ~= 6 concurrent users
  • We consider 20% of the requests are heavy requests, while 80% are simpler ones
  • A heavy worker, when all computed field is well designed, SQL requests are well designed, … is estimated to consume around 1Go of RAM
  • A lighter worker, in the same scenario, is estimated to consume around 150MB of RAM

Needed RAM = #worker * ( (light_worker_ratio * light_worker_ram_estimation) + (heavy_worker_ratio * heavy_worker_ram_estimation) )



https://www.odoo.com/documentation/13.0/setup/deploy.html

https://odoo-development.readthedocs.io/en/latest/admin/longpolling.html

Avatar
Discard
Related Posts Replies Views Activity
1
May 24
1924
3
May 24
146895
0
Feb 20
2836
1
Jul 19
12341
0
Jul 15
2744