通过观看 Nginx 视频,简单记得知识点。有点乱~
有时间可以直接看视频讲解 --- https://www.bilibili.com/video/av22576578
Nginx + uWSGI + Django 原理图,这里用到了一个另外的module:Mezzanine,也可以不用。
LAMP 和 LNMP
----------------------------------------------------------------------------------------------------------------------
CDN -- Content Distribution Network
CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。
简单集群架构图示 (服务器架构) -- 这里是10台服务器
CDN属于架构之外的内容,CDN是自己买服务就可以了 一般几毛钱一个G的存储
Apache是 restart, Nginx 是 reload
在 server{ } 内
Nginx zip 压缩
浏览器和服务器都得支持gzip压缩才可以
Nginx 负载均衡
/etc/nginx/nginx.conf 文件内容
user nginx;
worker_processes 1; # 进程数
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024; # 单个进程的并发量
}
# 总并发量 = 进程数 * 单个进程的并发量
# HTTP协议部分
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65; # 过期时间,大于65秒则认为这个服务器已宕机
#gzip on;
include /etc/nginx/conf.d/*.conf;
# add info as follows 需要添加的信息 -- 虚拟主机配置信息(一个网站虚拟机)
server {
listen 80; # 默认监听80端口
server_name 157.230.141.185; # 域名解析
charset UTF-8;
access_log /var/log/nginx/myweb_access.log;
error_log /var/log/nginx/myweb_error.log;
client_max_body_size 75M;
location / { # 配置默认访问页
include uwsgi_params;
uwsgi_pass 157.230.141.185:8888; # 这里ip和端口号 要和uwsgi.ini文件中一致
uwsgi_read_timeout 2;
}
location /static/ {
expires 30d;
autoindex on;
add_header Cache-Control private;
alias /home/music/collected_static/; # 这里要是收集静态文件的路径
}
}
}