tornado 多进程在ubuntu下通过bind启动,提示端口已占用

当前环境
Ubuntu:18.04

Python: 3.7.3

Tornado:6.0.2

根据CPU核数启动多进程
from tornado import ioloop
from tornado.web import Application
from tornado.httpserver import HTTPServer
 
from router import routers
from config import DEBUG, COOKIE_SECRET, HOST, PORT
 
 
app = Application(handlers=routers, debug=False, cookie_secret=COOKIE_SECRET)
server = HTTPServer(app)
server.bind(args.port or PORT, HOST)
server.start(num_processes=0)   # 根据CPU核数fork工作进程个数
ioloop.IOLoop.instance().start()
异常信息

原因
tornado server实例监听端口的方法有两种,bind和listen。

在Linux系统bind方法不起作用,需要使用listen;在macOS系统listen方法不起作用,需要使用bind。

上述监听端口代码需要改成: 

server.listen(args.port or PORT, HOST

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值