'NAME': 'fishteam_onlinejudge',
# The following settings are not used with sqlite3:
'USER': mysql_setting['USER'],
# Empty for localhost through domain sockets or '127。0。0。1' for
# localhost through TCP。
'HOST': mysql_setting['HOST'],
'PASSWORD': mysql_setting['PASSWORD'],
# Set to empty string for default。
'PORT': '3306',
'CONN_MAX_AGE': 14400, # 最大连接使用时间, 3600 * 4
}
}
最后文件格式应类似
{"USER": "YOURUSER", "HOST": "localhost","PASSWORD":"YOURPASSWORD"}
3。3 使用Celery实现异步队列文献综述
3。3。1 安装
celery只是一个队列,队列中存储的消息需要用其他东西来实现。 这里可以使用RabbitMQ、Redis或者数据库来实现。 这里最常用也最安全的方式就是RabbitMQ。
安装RabbitMQ:
sudo apt-get install rabbitmq-server
安装Celery:
pip install celery
3。3。2 使用方法
启动Celery,在工程目录下,进入venv开发环境下:
celery -A NJUST_OnlineJudge_M6 worker -l info
3。4 初次运行Judge工作
3。4。1 MySQL设置
创建名叫新数据库fishteam_onlinejudge,不考虑其他可以先这样。 注:后面需要import数据库进来,否则无法进入其他页面。
3。4。2 运行etcc
进入venv:来;自]优Y尔E论L文W网www.youerw.com +QQ752018766-
source 。。/venv/bin/activate
进入etcc主目录:
gunicorn -b 0。0。0。0:8009 api。app
3。4。3 运行Django
进入venv:
source 。。/venv/bin/activate
进入Judge目录,运行django:
python manage。py runserver 0。0。0:8080 注:如果出现报错,按照提示修改前面的配置
3。4。4 运行Celery
进入venv:
source 。。/venv/bin/activate
进入Judge主目录,运行Celery:
celery -A NJUST_OnlineJudge_M6 worker -l info