Java架构学习(三⼗⼀)nginx基础安全架构体系windows安装nginxnginx。。
nginx基础
⼀、nginx基础与安全体系架构
nginx和网关怎么配合使用nginx的作⽤:
1、nginx做反向代理、代理服务器、静态服务器。
2、nginx作⽤:
做集(减轻单台服务器的压⼒)。
反向代理:不暴露真实的ip地址。
3、虚拟服务器。静态服务器。(动静分离)
⾯试官问安全架构的时候可以说
nignx实现⽅向代理(不暴露真实ip).
使⽤Https防⽌抓包分析请求
搭建企业⿊名单和⽩名单系统
模拟请求(CSRF):属于业务攻击
XSS、SQL注⼊、反盗链。
ddos(流量攻击)使⽤nginx解决:属于流量攻击,
⽐如占⽤宽带,让别⼈⽆法访问。
nginx:性能⾮常好、占内存⼩、是轻量级服务器、
能扛住同时5万并发连接。
3、类似做nginx反向代理的服务器有:lvs(中国⼈写的)、
F5(不推荐与硬件打交道)、Haproxy。
⼆、windows安装nginx
nginx作⽤:
1、http服务器(反向代理)
2、虚拟主机
3、负载均衡
4、集
5、⽹站动静分离
nginx服务器启动直接点击就可以启动了。
默认端⼝是80端⼝。
80端⼝是浏览器默认端⼝。http默认端⼝。访问127.0.0.1:80显⽰nginx页⾯就是成功了。
三、nginx反向代理概念
什么是反向代理?
答:
什么是集?
答:集就是多台服务器如多台tomcat。
集会产⽣的问题:
1、分布式job幂等性(重复)问题。
使⽤xxLjob分布式任务调度平台
2、会话共享问题
session存放的问题。
session不同步的问题。因为有两多个tomcat.
3、分布式⽣成全局ID
⽣成订单ID,
订单好怎么解决幂等性问题。
使⽤提前⽣成好的订单ID,存放在redis中,
快使⽤完的时候再⽣成⼀批订单号存放在redis中。
使⽤分布式锁,多个jvm来进⾏通讯。
什么是分布式?
答:
单台服务器、接受⾼并发的情况下会宕机、瘫痪。
⾼并发第⼀种解决⽅案就是集。
负载均衡算法:1、权重、2、轮询机制 3、IP绑定。
四、使⽤nginx搭建集
服务器集怎么实现,使⽤nginx实现负载均衡:
反向代理解决的是暴露真实ip地址的。
负载均衡是实现集的。
集与分布式有什么不同?
答:集⽬的:解决单台服务器的压⼒
分布式⽬的:将⼀个项⽬进⾏拆分n个多个⼦项⽬,
分布式开发的⽬的完成同⼀个⼤体功能。
分布式开发RPC远程调⽤技术。
演变过程:
单点应⽤---->⾯向服务架构(SOA)webservice -->微服务架构  http+json格式进⾏传输SpringCloud restful.
主要配置就是在f⾥⾯配置
配置集之前,先配置反向代理,再去搭建nginx配置负载均衡
nginx配置反向代理
windows host⽂件⽬录  C:\Windows\System32\drivers\etc
配置反向代理
第⼀步、
第⼆步、
反向代理配置:
反向代理图:
集就是减轻单台服务器的压⼒
先是有反向代理---->负载均衡—>集
五、负载均衡策略
负载均衡的作⽤:提⾼⽹站的吞吐量 (接受响应),减轻单台服务器的压⼒。
吞:接受
吐:响应
nginx负载均衡算法:轮询机制(机器都相同)、权重(⽐例分配)、
IP绑定(没有⽤,只让⼀个ip进⾏访问,解决会话共享问题)、
fair第三⽅、url_hash。
后⾯两种不重要
权重配置: