Nginx

Posted tk970803

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx相关的知识,希望对你有一定的参考价值。

1、nginx轻量级服务器,抗住同时5W并发连接。
    作用:做http服务器(反向代理)、虚拟主机、负载均衡、集群(实现动静分离)。
2、Nginx的作用:集群(件清单台服务器的压力),反向代理(不爆露真实IP地址),静态服务器(动静分离)
3、项目安全架构措施
    1、ngin反向代理(不爆露真实IP地址)
    2、使用https防止抓包分析HTTP请求
    3、搭建企业黑名单和白名单系统
    4、模拟请求(csrf)、XSS、防sql注入
    5、ddos(流量攻击)   nginx解决
    csrf:业务攻击,不断重复无用提交
    ddos:流量攻击,不断的访问请求,占用带宽,让别人无法访问
4、跨域问题:
    JSONP只支持GET请求而不支持POST等其他类型的HTTP请求。兼容性好,请求完毕后可以通过调用callback的方式回传结果。
    Nginx反向代理,搭建api接口网关,
5、正向代理和反向代理
    区别:正向代理代理客户端,反向代理代理服务器。
    正向代理服务器位于客户端和服务器之间,为了向服务器获取数据,客户端要向代理服务器发送一个请求,并指定目标服务器,代理服务器将目标服务器返回的数据转交给客户端。
    反向代理我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。
6、Nginx的负载均衡机制
    客户端发出两个请求去访问服务器集群,nginx会通过负载均衡机制不会让请求都访问到一个服务器上,会造成压力过大。
    负载均衡:权重(按比例分配)、轮询机制、IP绑定。
7、搭建集群会出现什么情况?
    1、分布式job幂等性(重复)问题
    2、session会话共享问题
    3、分布式生成全局ID
        面试:在集群生成的订单ID怎么解决幂等性(重复性)问题
            提前生成好,存放在redis中或者在同一时间只能生成一次订单号
8、服务器集群怎么实现的,使用Nginx实现负载均衡
    反向代理时解决不爆露真实IP地址
9、集群与分布式
    集群目的:减去单台服务器压力
    分布式:将一个项目进行拆分多个子项目,分布式开发。
    分布式开发RPC(dobbo一些框架实现)远程调用技术,对每个子项目之间进行通讯。
10、session共享解决方案
    1、使用redis解决,存放在redis中
    2、使用cookie    不安全
    3、使用数据库     对数据库有压力
    4、token重写session
    如果服务器重启,如何解决session失效问题
        使用redis持久化

以上是关于Nginx的主要内容,如果未能解决你的问题,请参考以下文章

NginxNginx配置REWRITE隐藏index.php

NginxNginx配置文件解析

NginxNginx基础操作

NginxNginx基础操作

NginxNginx基础操作

NginxNginx基础操作