无法使用 --workers 选项 运行 Odoo

Not able to run Odoo with --workers option

我正在尝试 运行 Odoo8 在多处理模式下使用 --workers 选项。它 运行 没有 --workers 参数没问题但是有 --workers 参数它给我错误

socket.error: [Errno 98] Address already in use

似乎每个工作进程都试图绑定到一个端口。

这是我的运行配置

python openerp-server --addons-path my_adons_paths --db_user my_db_user --db_password my_db_password --db-filter my_db_to_use --no-database-list --workers 2

我是不是哪里做错了,还是 Odoo 有问题?

我检查过 8069 端口上已经 运行 没有进程,服务器 运行 在没有 --workers 2 参数的情况下也很好。那就是

python openerp-server --addons-path my_adons_paths --db_user my_db_user --db_password my_db_password --db-filter my_db_to_use --no-database-list

当我设置工人大于零时,我也有很多问题。很奇怪,您收到错误 Address already in use 并且那里没有任何进程 运行。当我收到该错误时,我会终止 Odoo 端口上的所有进程 运行,然后我可以再次启动 Odoo。

以防万一,在再次启动 Odoo 服务器之前尝试这样做:

sudo fuser -k 8069/tcp

好的,问题已解决!

问题出在我这边。为了调试(没有这个就不可能)我在我的 odoo/openerp/__init__.py 文件中有 evented = False

更具体地说,我对这些行进行了评论

if sys.modules.get("gevent") is not None:
    evented = True

导致问题的原因,再次将其设置为 True(启用上述行)解决了问题。