nginx实现负载均衡主要使用到的是upstream属性
    当前版本:

    1. $ nginx -version
    2. nginx version: nginx/1.17.9

    首先我们配置一下nginx

    1. http{
    2. upstream localhost{
    3. server localhost:8001 weight=1;
    4. server localhost:8002 weight=2;
    5. }
    6. server {
    7. listen 8000;
    8. server_name localhost;
    9. location / {
    10. proxy_pass http://localhost;
    11. proxy_redirect default;
    12. }
    13. }
    14. }

    这个时候,我们可以建立两个服务,一个由localhost:8001,另一个由localhost:8002启动。然后访问lcoalhost,我们就可以发现,大概会出现两次8002的页面。再出现一次8001页面。这样就形成了nginx服务的分发,也就是负载均衡。

    upstream 参数解释:

    1. upstream localhost{
    2. iphash; // ip_hash指令能够将某个客户端IP的请求通过哈希算法定位到同一台后端服务器上,这样能够很好的保持session,但是这样,不能很好的保证负载均衡,最后使用session共享的方式保证session的可用
    3. least_conn; // 检测连接数,然后将请求分发到连接数最少的服务器中
    4. server localhost:8001 weight=1; // weight代表权重,数字越大权重越高,越容易被分发到
    5. server localhost:8002 weight=2;
    6. fair; // 根据响应时间来判断,响应时间短的优先连接
    7. }