莫大人

分布式与集群理解之部署结构

上个篇章的例子中我们来个简单的项目部署结构

乘客:使用终端发起购票申请

调度员:nginx作为分发以及负载均衡

窗口:负责业务处理,这里我启动了4台tomcat 端口分别为 8081,8082,8083,8084 来处理购买车票A的业务 8081,购买车票B的业务 8082,购买车票C的业务 8083,8084

 

那么关键点在于第一个调度员的消息分发路由,起作用是将不同的购票请求分发到不同的后台服务器进行业务处理来实现分布式部署,

第二个调度员实现负载的均衡,将购票请求平均分配到服务器

这里 nginx 的配置如下:

worker_processes  1;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;
    
    
    upstream server_c {
        server 127.0.0.1:8083; //窗口E
        server 127.0.0.1:8084; //窗口F
    }

    server {
        listen       2016;
        server_name  localhost;
        location /passengerA { //购买车票A
            proxy_pass http://localhost:8081/; //窗口A
            proxy_set_header   Host    $host;
            proxy_set_header   X-Real-IP   $remote_addr; 
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        
        location /passengerB { //购买车票B
            proxy_pass http://localhost:8082/; //窗口B
            proxy_set_header   Host    $host;
            proxy_set_header   X-Real-IP   $remote_addr; 
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        
        location /passengerC { //购买车票C
            proxy_pass http://server_c/;
            proxy_set_header   Host    $host;
            proxy_set_header   X-Real-IP   $remote_addr; 
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}

 

posted on 2017-08-07 11:16  莫大人  阅读(475)  评论(0编辑  收藏  举报

导航