代理
在Java设计模式中,代理模式是这样定义的:给某个对象提供一个代理对象,并由代理对象控制原对象的引用。
正向代理
访问外网( 指在客户端进行一些设置 )
反向代理
反向代理和正向代理的区别就是:正向代理代理客户端 ,反向代理代理服务器。
反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问,我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。
nginx****安装
- 下载 nginx 包后解压到某盘
- 打开 cmd ,进入 nginx 下,输入命令 start nginx.exe 启动 nginx
- 浏览器输入 127.0.0.1 ,进入 nginx 欢迎页面
- 服务停止命令 nginx -s stop 服务重启命令 nginx -s reload
停止nginx,任务管理器停止即可:
负载均衡
负载均衡也是Nginx 常用的一个功能,负载均衡其意思就是分摊到多个操作单元上进行执行,例如Web服务器、 FTP 服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。简单而言就是当有2 台或以上服务器时,根据规则随机的将请求分发到指定的服务器上处理,负载均衡配置一般都需要同时配置反向代理,通过反向代理跳转到负载均衡。而Nginx 目前支持自带3 种负载均衡策略,还有 2 种常用的第三方策略。
负载均衡简单设置
- 打开 nginx\conf 目录下 nginx.conf 文件
做如下配置:
upstream servertest {
server 127.0.0.1:8081 down ;
server 127.0.0.1:8082 weight=3;
}
说明:
down :表示单前的 server 暂时不参与负载
Weight :默认为 1 . weight 越大,负载的权重就越大。
max_fails :允许请求失败的次数默认为 1 . 当超过最大次数时,返回 proxy_next_upstream 模块定义的错误
fail_timeout : max_fails 次失败后,暂停的时间。
Backup :其它所有的非 backup 机器 down 或者忙的时候,请求 backup 机器。所以这台机器压力会最轻
location / {root html;
index index.html index.htm;
proxy_pass http://servertest; #请求转向servertest 定义的服务器列表
}