flask+celery+uwsgi+nginx+redis项目部署(CentOS系统)

前沿

本次算法部署是基于restapi服务,以http请求的方式提供服务。主要基于Flask + celery + uwsgi + nginx实现,对外提供相关的功能。整个部署下来最大的感受就是在redis的安装和配置上CentOS与Ubuntu有区别。

服务部署

1.Anaconda

下载

wget -P [文件保存路径] https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2019.07-Linux-x86_64.sh

安装(cd到文件保存路径下)

sh Anaconda3-2019.07-Linux-x86_64.sh

修改~/.bashrc

__conda_setup="$('[文件保存路径]/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "[文件保存路径]/anaconda3/etc/profile.d/conda.sh" ]; then
        . "[文件保存路径]/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="[文件保存路径]/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup

设置自动激活虚拟环境

conda config --set auto_activate_base true

2.安装依赖包

  • 逐个安装
pip install celery -i https://pypi.douban.com/simple/
pip install redis -i https://pypi.douban.com/simple/
pip install flask -i https://pypi.douban.com/simple/
pip install uwsgi -i https://pypi.douban.com/simple/
  • 批量安装
pip install -r requirements.txt -i https://pypi.douban.com/simple/

3.安装redis

下载

wget http://download.redis.io/releases/redis-4.0.6.tar.gz

解压

tar -zxvf redis-4.0.6.tar.gz

安装gcc依赖

yum install gcc

跳转到redis目录下,编译安装

make MALLOC=libc
cd src && make install

启动redis
redis启动,网上会有所谓的三种启动方式,但都不实用,因为redis的配置文件一般都会在工程文件打包放在一起的。

下载好的redis的启动文件在utils/redis_init_script,可以看到是通过$EXEC $CONF完成启动,因此在自己的工程文件里只需要将CONF换成自己的redis.conf即可
## 修改startup.sh(自己写的启动redis、celery、uwsgi等的脚本)
添加:EXEC=/usr/local/bin/redis-server
启动redis改为:$EXEC $CURR_DIR/redis_6973.conf

4.一些问题

如果一切顺利的话,基本到这里就结束了,其他的就是把工程文件和模型放上去。

问题1:

问题:uwsgi: error while loading shared libraries: libssl.so.1.1.1:cannot open shared object file: no such file or directory
解决方法:建立软链接:ln -s [文件保存路径]/anaconda3/lib/libssl.so.1.1.1 /lib64/libssl.so.1.1.1

问题2:

问题:非法指令(吐核)
解决方法:安装TensorFlow等安装包版本问题,卸载或者重新安装

问题3:

问题:2020/09/10 18:29:26 [error] 42488#0: *11 readv() failed (104: Connection reset by peer) while reading upstream, client: 192.168.1.81, server: , request: “POST /algorithm/zhiwen-doc-extract/ HTTP/1.1”, upstream: “uwsgi://172.16.118.4:9051”, host: “172.16.118.4:9050”
解决方法:可能由于requests请求地址错误,检查一下

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风吹半夏灬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值