Nginx安裝啟動+springboot項目實現負載均衡實戰


1.安裝啟動nginx


(1).安裝編譯工具及庫文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

 

(2).安裝 PCRE,下載地址: https://ftp.pcre.org/pub/pcre/pcre-8.35.tar.gz

[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# wget https://ftp.pcre.org/pub/pcre/pcre-8.35.tar.gz
[root@localhost src]# tar -zxvf pcre-8.35.tar.gz
[root@localhost src]# cd pcre-8.35/
[root@localhost pcre-8.35]# ./configure && make && make install

 

(3).安裝nginx,下載地址: http://nginx.org/download/nginx-1.6.2.tar.gz

[root@localhost src]# cd /usr/local/src/
[root@localhost src]# wget http://nginx.org/download/nginx-1.6.2.tar.gz
[root@localhost src]# tar -zxvf nginx-1.6.2.tar.gz
[root@localhost src]# cd nginx-1.6.2/
[root@localhost nginx-1.6.2]# ./configure && make && make install

 

(4).啟動nginx

[root@localhost /]# cd /usr/local/nginx/sbin/
[root@localhost sbin]# ./nginx

 

2.springboot項目實現負載均衡示例


(1).創建springboot項目

 

(2).編寫可訪問的demo代碼

package com.project.demo.spring.boot.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * @author:wk
 * @date:2020/9/11
 */
@ResponseBody
@Controller
@RequestMapping("/demo")
public class TestController {
    @GetMapping("/getServerName")
    public String getServerName() {
        return "server1";
    }
}

 

(3).將項目打包放到一台機器上,改動返回值為"server2"並將其打包放到另一台機器上,分別啟動

 

 

(4).修改nginx負載均衡方面配置(默認為輪詢方式),並保存

upstream myServer {
        server 10.1.4.85:8080;
        server 10.1.8.116:8080;
    }

    server {
        listen       7000;
        server_name  localhost;

        location / {
            proxy_pass http://myServer;
            root   html;
            index  index.html index.htm;
        }

 

(5).重載nginx配置

[root@localhost nginx]# cd /usr/local/nginx/sbin/
[root@localhost sbin]# ./nginx -s reload

 

(6).這時多次訪問http://(nginx安裝機器ip):7000/demo/getServerName,就會發現會輪詢的調用10.1.4.85和10.1.8.116的接口

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM