网站首页 > 精选教程 正文
主要了解一下nginx的反向代理和负责均衡的配置。
先了解一下常用的命令,进入sbin目录
./nginx 启动nginx ./nginx -s stop 快速关闭nginx,可能不保存相关信息,并快速结束web服务 ./nginx -s quit 平稳关闭nginx,保存相关信息,有安排的结束web服务 ./nginx -s reload 重启,修改配置后都需要重启
反向代理
反向代理,就是"代理服务器"代理了"目标服务器",去和"客户端"进行交互。
nginx的配置文件默认是/conf目录里的nginx.cnf。主要看http块中,配置就简单些。
http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; #设定实际的服务器列表 upstream server1{ server 127.0.0.1:8080; } server { listen 80; #使用www.test.com访问 server_name www.test.com; #首页 index index.html; #反向代理的路径,和upstream绑定 location / { proxy_pass http://server1; } } }
修改了配置文件,使用 nginx -t 检测一下有没错误,出现successful说明没有问题,可以重新启动nginx。
接下来,第一步需要在服务器上部署我们的web项目,tomcat端口要是8080的。我这里搞一个简单项目,名称test,里面的首页index.html
index.html只有一句话:测试项目一
第二、打开我们计算机的hosts文件,路径 是
C:\Windows\System32\drivers\etc,在底部添加一行
192.168.1.104 www.test.com
192.168.1.104是服务器ip,这样,当访问www.test.com时,系统会首先自动从Hosts文件中寻找其对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。
现在启动项目的tomcat,记得启动前要开放端口8080,启动完成在浏览器访问www.test.com
能访问到首页的内容,说明配置成功了。
负载均衡
在实际中,我们的网站或者系统都会有多台服务器运行着同一个项目,这时需要使用负载均衡来分流。使用nginx也可以实现负载均衡。
搞了两台虚拟机来模拟,192.168.1.104和192.168.1.169。在192.168.1.104上部署nginx,对请求作负载均衡处理。
同样配置简单些
http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; #设定实际的服务器列表 upstream balance-server{ #weigth参数表示权值,权值越高被分配到的几率越大 server 192.168.1.104:8080 weight=1 server 192.168.1.169:8080 weight=3 } server { listen 80; #使用www.test.com访问 server_name www.test.com; #首页 index index.html; #反向代理的路径,和upstream绑定 location / { proxy_pass http://balance-server; } } }
最近在弄的时候,发现一个坑,upstream balance-server 这里,不能使用下划线“_”,不然后访问项目会报错。
The character [_] is never valid in a domain name.
现在两台机器已经部署了同样的项目,当前首页内容改一下以作区别,启动项目。
现在是虚拟机上,两台机器都可以直接访问,看一下内容
104:
109:
现在启动nginx,先用nginx -t看一下配置文件有无报错
successful,说明没有问题。启动之后记得要配置计算机的hosts文件。
现在访问www.test.com:
访问没有问题,自己配置的时候可以多刷新几次,看看效果。
配置还是比较简单的,性能优化会比较难。还有一些配置的可选参数可以去了解一下,还有其他的功能,比如静态资源配置、黑白名单、限流等等,有需要可以深入学习一下。
- 上一篇: 如果让你设计一个秒杀系统,你会怎么做?
- 下一篇: 智慧医疗 - 微服务最佳实践 智慧医疗服务效果
猜你喜欢
- 2024-10-12 基于Nginx+lua的蓝绿发布系统 lvs nginx配合
- 2024-10-12 「天天向上」「django」nginx和uWSGI如何配合工作?
- 2024-10-12 最全php7进阶到架构师学习路线图 php架构师视频教程
- 2024-10-12 深入理解浏览器缓存 浏览器缓存读取规则
- 2024-10-12 Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm调优
- 2024-10-12 从Nginx迁移APISIX中的API网关TLS问题排查实录
- 2024-10-12 优化体系--tomcat参数优化(内存、线程、压缩、集群、ARP)
- 2024-10-12 智慧医疗 - 微服务最佳实践 智慧医疗服务效果
- 2024-10-12 如果让你设计一个秒杀系统,你会怎么做?
- 2024-10-12 【Nginx基础】如何实现Path分流 nginxiphash 分配情况
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)