我尝试使用多处理来运行daphne
2.1。在我的文档中:
如果要将多个Daphne实例绑定到a上的同一端口 机器,使用可以监听端口并通过的进程管理器 文件描述符启动进程,然后传递文件 描述符--fd NUM。
我尝试使用套接字(dapnhe.socket
):
[Unit]
Description=Daphne Socket worker %i
[Socket]
ListenStream=/usr/local/reduction/dist/daphne.sock
Accept=yes
[Install]
WantedBy=sockets.target
使用服务(daphne@.service
)
[Unit]
Description=Daphne Service For Django %I
After=syslog.target
Requires=daphne.socket
[Service]
Type=simple
RuntimeDirectory=daphne
PIDFile=/run/daphne.pid
WorkingDirectory=/usr/local/reduction/src
ExecStartPre=/bin/bash -c 'systemctl set-environment FD=`echo %i | tr -d -`'
ExecStart=/bin/bash -c '/usr/local/reduction/venv/bin/daphne -fd ${FD} server.asgi:application'
Restart=always
[Install]
WantedBy=multi-user.target
%i
的格式为%d-%d-%d
。我只是删除-
,然后再将其传递给daphne
。
这不起作用......
任何人都知道如何将FD传递给daphne
?