Odoo部署的服务器配置选择
-
Odoo默认工作在“线程”模式下。当并发用户增加时,线程模式因为Python的GIL全局锁的限制,导致它无法分配现今多核服务器的其它内核来处理运算请求。所以,当有比较多的并发用户时,我们要将Odoo设置为“多进程”的模式,以充分利用服务器多核的计算资源。
所谓让Odoo工作在“多进程模式“,就是给启动参数
workers设置一个非0的数值,那设多少合适呢?首先,我们要知道:一个worker大致能并发处理6~10用户请求,所以比如60用户并发,那就大致需要配置10个worker
Odoo的worker的值的设置还与服务器的内核数量有关,因为这些worker的负载最后是要由CPU内核运算单元来消化的。所以比如一个普通的单CPU,4核服务器,可以支持的workers的数量就是 2 * Cores + 1 = 9, 8个http worker, 1个cron job worker。 与上面的10个worker的需求接近,所以处理60用户并发我们可以选一台拥有4核的服务器,Odoo配置:
workers = 8 max_cron_threads = 1那么内存应该配置多少呢?一般一个任务繁重的worker占用1G内存,而大多数轻载的worker占用内存为150M左右。而在实际的应用中遵守2/8法则,即重载worker和轻载worker的存在比例时20%/80%, 所以9个worker的内存需求为:
9 * (0.8 * 150 + 0.2 * 1024)≂ 3 G RAM由此可以看出,Odoo还是一个并不怎么消耗服务器资源的平台。
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login