Nginx环境搭建、负载均衡测试

Nginx环境搭建、负载均衡测试

系统环境:

win10,IDEA2020,JDK8

一、nginx环境搭建

1.ngxin下载

Nginx官网下载: http://nginx.org/en/download.html

Nginx有三种版本,分别是Mainline version(开发版)、Stable version(稳定版)、Legacy versions(早期版本)。一般选用稳定版本。

Linux使用时选用中间的版本下载然后通过Xftp或Filezilla工具上传到Linux服务器上即可。也可以从浏览器上复制下载文件的URL地址后在服务器中使用wget命令进行下载。

下载的是个zip包,解压到文件夹即可。

2. nginx的启停

启动:可以双击nginx.exe

停止:打开nginx文件夹,在地址栏输入cmd,然后回车打开命令终端,输入

nginx -s stop




验证:输入网页localhost,出现nginx的欢迎页面则启动成功。

二、负载均衡测试

1.先用IDEA创建一个Springboot+Thymeleaf的项目。

File==>New ==>Project





修改pom文件:

修改application.yml文件:

java 复制代码
server:
  port: 8080
spring:
  thymeleaf:
    # 关闭thymeleaf的缓存
    cache: false
    # 文件的地址
    prefix: classpath:/templates/
    # 文件的后缀名
    suffix: .html
    # 是否启用thymeleaf
    enabled: true

controller文件代码:

java 复制代码
@Controller
public class NginxTestController {
    @Value("${server.port}")
    private String port;

    @RequestMapping("/")
    public ModelAndView index(){
        ModelAndView model = new ModelAndView();
        model.addObject("port", port);
        model.setViewName("index");
        return model;
    }
}

index.html文件代码:

java 复制代码
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div style="border: 2px solid red;margin: auto;width: 800px;text-align: center">
    <div  id="nginx_title">
        <h1>欢迎来到XXX高级会所,我是<span th:text="${port}"></span> 号!</h1>
    </div>
</div>
</body>
</html>

修改nginx的配置文件(conf/nginx.conf):

java 复制代码
upstream nginx_boot{  
   # 30s内检查心跳发送两次包,未回复就代表该机器宕机,请求分发权重比为1:2  
   server 192.168.0.000:8080 weight=100 max_fails=2 fail_timeout=30s;   
   server 192.168.0.000:8090 weight=200 max_fails=2 fail_timeout=30s;  
   # 这里的IP请配置成你WEB服务所在的机器IP  
}  
  
server {  
    location / {  
        root   html;  
        # 配置一下index的地址。  
        index  index.html index.htm index.jsp index.ftl;  
        proxy_set_header Host $host;  
        proxy_set_header X-Real-IP $remote_addr;  
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
        # 请求交给名为nginx_boot的upstream上  
        proxy_pass http://nginx_boot;  
    }  
}  

修改完配置文件需要重启nginx。

下面我们启动两个web服务:

测试:

nginx负载均衡

可以看到,一次80的端口两次90的端口。负载均衡测试成功。

相关推荐
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.3 小时前
Haproxy会话保持:基于Cookie优化
运维·负载均衡
打工的小王10 小时前
nginx(一)nginx简介
nginx
李少兄13 小时前
深入解析 Nginx 413 Request Entity Too Large 错误
运维·nginx
gettingolder14 小时前
haproxy的简单负载均衡实现
运维·服务器·负载均衡
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.14 小时前
HAPROXY安装,双网卡负载均衡实战指南
运维·负载均衡
zhojiew15 小时前
在EKS上使用LBC的GatewayAPI创建负载均衡器和扩展配置
运维·负载均衡
漏刻有时16 小时前
宝塔服务器被篡改 Nginx Location 配置的安全风险剖析与修复指南(流量劫持、服务器资源消耗、站点功能异常、溯源困难)
服务器·nginx·安全
你知道“铁甲小宝”吗丶16 小时前
nginx代理ip哈希用法
nginx·哈希算法
代码的奴隶(艾伦·耶格尔)1 天前
Nginx
java·服务器·nginx
液态不合群1 天前
Nginx多服务静态资源路径冲突解决方案
运维·nginx