故障管理系统 0.1 nginx+uwsgi+django

后端架构:nginx+uwsgi(可选)+django

django不适合直接提供web服务,比如处理静态文件,提供负载均衡等。所以前端需要有nginx服务器。

那为什么需要uwsgi呢?

其实不用也可以的,只不过uWSGI性能高,使用内存低,能同时管理多个app,相近的日志功能,高度可定制。

WSGI是一种Web服务器网关接口,它是一个Web服务器(比如nginx)和应用服务器(比如uWSGI服务器)通信的一种规范,然后uwsgi是实现了uwsgi和WSGI两种协议的Web服务器,简单点说就是运用uwsgi我们可以实现由uwsgi启动django,然后ngix通过端口与uwsgi通信,在这个过程中,django实现了wsgi服务器的功能,ngix实现了wsgi客户端的功能,只不过在web里面,ngix扮演的又是服务器(计算机中的软件通信有很多都是客户端服务器模式。如文件资源就是一个服务,然后应用程序实现了了相应的协议从而去调用这个服务)。这样就实现了uwsgi在ngix和django的中转。

其实我们不用uwsgi也是可以的,比如我(太懒)。

nginx安装和配置

yum -y install nginx
nginx -v
nginx version: nginx/1.12.2

在/etc/nginx/conf.d/目录下添加如下文件:

#cat server.conf
server {
    listen 80;
    server_name your_domain;

    location / {
        proxy_pass http://127.0.0.1:8080;
    }

}

然后我们再后台把django服务启动
python3 manage runserver 127.0.0.1:80 &

然后在hosts文件中绑定服务器IP+你的域名就行了,或者添加dns解析就能了访问你的域名了。


通过nginx访问django.png

最终的访问路径是client->nginx->django

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容