1. 架构师成长路径&后端架构演进
什么是架构?什么是架构师?
为什么那么多开发者都向往开发师岗位
系统开发该什么时候才考虑架构设计
要成为真正的架构师需要具备哪些硬骇能力
不同企业内架构师岗位有什么区别
在进行架构设计时需要考虑哪些因素
从后端的服务架构演进史中能学到什么?
什么是单体架构?如何设计合理的单体架构?
什么是SOA架构?这种架构有什么优缺点?
微服务架构的优缺点是什么?无服务架构真不需要服务器吗?
三高一海 - 社交电商架构实战案例点介绍
三高一海 - 基础中台架构实战案例点介绍
三高一海 - 数据架构实战案例点介绍
三高一海 - 服务稳定性与工程提效架构案例点介绍
2. Nginx实战应用讲解
从单体架构到分布式架构演进
nginx常⽤命令
启动
./nginx
停止
nginx -s stop
热更新
nginx -s reload
Nginx配置⽂件相关参数含义
代码块
/usr/local/nginx
├── client_body_temp # POST ⼤⽂件暂存⽬录
├── conf # Nginx所有配置⽂件的⽬录
│ ├── fastcgi.conf # fastcgi相关参数的配置⽂件
│ ├── fastcgi.conf.default # fastcgi.conf的原始备份⽂件
│ ├── fastcgi_params # fastcgi的参数⽂件
│ ├── fastcgi_params.default
│ ├── koi-utf
│ ├── koi-win
│ ├── mime.types # 媒体类型
│ ├── mime.types.default
│ ├── nginx.conf #这是Nginx默认的主配置⽂件,⽇常使⽤和修改的⽂
件
│ ├── nginx.conf.default
│ ├── scgi_params # scgi相关参数⽂件
│ ├── scgi_params.default
│ ├── uwsgi_params # uwsgi相关参数⽂件
│ ├── uwsgi_params.default
│ └── win-utf
├── fastcgi_temp # fastcgi临时数据⽬录
├── html # Nginx默认站点⽬录
│ ├── 50x.html # 错误⻚⾯优雅替代显⽰⽂件,例如出现502错误时
会调⽤此⻚⾯
│ └── index.html # 默认的⾸⻚⽂件
├── logs # Nginx⽇志⽬录
│ ├── access.log # 访问⽇志⽂件
│ ├── error.log # 错误⽇志⽂件
│ └── nginx.pid # pid⽂件,Nginx进程启动后,会把所有进程的ID
号写到此⽂件
├── proxy_temp # 临时⽬录
├── sbin # Nginx 可执⾏⽂件⽬录
│ └── nginx # Nginx ⼆进制可执⾏程序
├── scgi_temp # 临时⽬录
└── uwsgi_temp # 临时⽬录
#核⼼模块 CoreModule
## ⼯作进程数,这⾥⼀般和cpu的核⼼数相同
worker_processes 1;
## ⽇志
error_log logs/error.log;
#事件模块 EventModule
events {
## 使⽤io模型为epollo 默认就是epoll
use epoll
##⼯作连接数,⼀般⼀台8core 16gb的机器配置的是10000左右,其他硬件配置的机器建议压⼒
测试调优
worker_connections 1024;
}
#http模块 HttpModule ⽹关⼯作相关的配置
http {
#⽂件关联程序 引⼊媒体访问类型,应⽤程序和⽂件类型的⼀个关联
include mime.types;
#默认以字节流来处理数据请求
default_type application/octet-stream;
#nginx⾃带的⽇志格式的定义⽅法
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29#正常访问⽇志
access_log logs/access.log main;
#优化nginx访问的⼀项参数
sendfile on;
#⻓链接超时时限
keepalive_timeout 65;
#虚拟主机配置
server {
listen 81;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}