目录

[TOC]

扩容

通过扩容提升整体吞吐量

扩容方式

  1. 单机垂直扩容:硬件资源增加,比如添加内存条之类的
  2. 水平扩展:集群化,同时部署多台Nginx服务器,搭建Nginx集群

单机垂直扩容

硬件资源增加:

  1. 云服务器资源增加
  2. 换好的服务器
  3. CPU / 主板:更新到主流
  4. 网卡:10G / 40G网卡
  5. 磁盘:机械【冷数据存储】、SSD【系统盘、热点数据等】

水平化扩展

集群化

扩容方式 1. 单机垂直扩容:硬件资源增加 2. 水平扩展:集群化 3. 细粒度拆分:分布式 1. 数据分区 2. 上游服务SOA化(原生支持水平/垂直扩容) 3. 入口细分 1. 浏览器 2. 移动端原生App (物联网) 3. H5内嵌式应用

会话管理

Nginx自带哈希负载均衡

三种哈希选择一种即可

ip_hash

hash $cookie_jsessionid;

hash $request_uri;

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
30
31
32
33
34
35
36
worker_processes  1;

events {
worker_connections 1024;
}


http {
include mime.types;
default_type application/octet-stream;
sendfile on;
# upstream后面的名字自定义,随便填什么都可以
upstream httpds {
# IP哈希
ip_hash;
# tomcat下发的jsessionid哈希
# hash $cookie_jsessionid;
# 请求地址哈希
# hash $request_uri;
server 192.168.40.143:80;
server 192.168.40.144:80;
}

server {
listen 80;
server_name localhost;

location / {
proxy_pass http://httpds/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}

sticky模块对Nginxjin’xing