ngix能做什么?  1 反向代理 2 负载均衡 3 正向代理 4 HTTP服务器(动静分离)

1 反向代理 Reverse Proxy 是指以代理服务器来接受来自internet或者是客户端的连接请求,然后将请求转发给内部网络上的服务器,并将服务器上得到的结果返回给internet上请求连接的客户端。

此时代理服务器对外表现就表现为一个反向代理服务器。简单来说就是真实的服务器不能直接被外部网络访问,所以需要一台代理服务器。而代理服务器能被外部网络访问的同时又跟真实服务器在同一个

网络环境,当然也可以是同一台服务器,只是端口号不同而已。

2 负载均衡也是ngix的一个常用的功能 其意思是分摊到多个操作单元上进行执行,例如web服务器,ftp服务器,企业关键应用服务器和其他关键任务服务器,从而共同完成任务。简单说就是当有2台或以上的服务器时,

根据规则随机的将请求分发到指定的服务器上处理,负载均衡一般都是需要同时配置反向代理,通过反向代理跳转到负载均衡,而ngix目前支持3种方式的负载均衡,还有2种常用的第三方策略。

2.1 RR (默认) 每个请求按照时间顺序逐一分配到不同的后端服务器,如果后台服务器down掉,能自动剔除。

2.2 权重  指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

2.3 ip_hash 上面的两种方式都有一个问题,那就是下一个请求来的时候可能分发到另外一个服务器,当我们的程序不是无状态(采用了session保存数据),这时候就有一个很大的问题了,

比如把登录信息保存到了session中,那么跳转到另外一台服务器的时候就需要重新登录了。所以很多时候我们需要一个客户只访问一个服务器,那么就需要ip_hash了。iphash的每个请求按照访问ip的hash

结果分配。这样每个访客固定访问一个后端服务器,可以解决session的问题.

3 HTTP服务器 ngix本身也是一个静态资源服务器,当只有静态资源的时候,就可以使用ngix来做服务器,同时也很流行动静分离,就可以通过ngix来实现。

4 动静分离是让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好拆分之后,就可以根据静态资源的特点将其做缓存操作,这就是网站静态化处理的核心思路。

ngix介绍的更多相关文章

  1. 大型网站技术架构介绍--squid

    一.大型网站技术架构介绍 1.pv高  ip高 并发量 2.大型网站架构重点    1. 高性能:响应时间,TPS,系统性能计数器.缓存,消息队列等.     高可用性High Availabilit ...

  2. Ngix 移动端与Pc端 反向代理判断

    如神马搜索和百度(http://www.baidu.com),当用桌面浏览器和移动浏览器访问的结果是不一样的.其中的手段可能有两种: 转载Ngix反向代理判断 服务端直接判断UA输出不同的界面,JAV ...

  3. 【个人笔记】002-PHP基础-01-PHP快速入门-02-PHP语言相关介绍输

    002-PHP基础-01-PHP快速入门 02-PHP语言相关介绍 1.PHP是什么 Hypertext Preprocessor超文本预处理器 是一种通用开源脚本语言 Personal Home P ...

  4. xshell连接Linux、ngix部署

    Linux端安装sshd服务(openssh-server) 查看防火墙:ufw(Linux默认安装了) 再就是客户端了.. 平时在测试环境下的项目不能承载高并发,需要部署到web server上.w ...

  5. mod_php和mod_fastcgi和php-fpm的介绍,对比和性能数据

    1.php中fastcgi和php-fpm是什么东西 最近在研究和学习php的性能方面的知识,看到了factcgi以及php-fpm,发现我对他们是少之又少的理解,可以说几乎是一无所知,想想还是蛮可怕 ...

  6. CSS3 background-image背景图片相关介绍

    这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...

  7. MySQL高级知识- MySQL的架构介绍

    [TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...

  8. Windows Server 2012 NIC Teaming介绍及注意事项

    Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...

  9. Linux下服务器端开发流程及相关工具介绍(C++)

    去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...

随机推荐

  1. Go -- this user requires mysql native password authentication 错误

    this user requires mysql native password authentication 在连接mysql的url上加上?allowNativePasswords=true,这次 ...

  2. php 验证中文和部分自定义符号

    $str = '54787dDp中s-:"'; $rule ="/^[\x{4e00}-\x{9fa5}A-Za-z0-9`·!!@#$\¥%…^&*(())\-+=“.\ ...

  3. sqlserver 动态sql执行execute和sp_executesql

    sp_executesql的运用 书写语法要点: exec sp_executesql @sql,N’参数1 类型1,参数2 类型2,参数3 类型3 OUTPUT’,参数1,参数2,参数3 OUTPU ...

  4. 时间戳 Flume's Memory Consumption

    效率 https://www.cnblogs.com/zhujiabin/p/6168671.html?utm_source=itdadao&utm_medium=referral  http ...

  5. Facebook libra开发者文档- 3 -Life of a Transaction交易生命周期

    Life of a Transaction交易的生命周期 https://developers.libra.org/docs/life-of-a-transaction 为了更深入地了解Libra交易 ...

  6. 22Flutter中的常见的按钮组件 以及自定义按钮组件

    /* Flutter中的常见的按钮组件 以及自定义按钮组件 一.Flutter中的按钮组件介绍 Flutter里有很多的Button组件,常见的按钮组件有:RaisedButton/FlatButto ...

  7. 123457123457#0#-----com.yuming.YiZhiFanPai01--前拼后广--益智早教游戏记忆翻牌cym

    com.yuming.YiZhiFanPai01--前拼后广--益智早教游戏记忆翻牌cym

  8. Python - Django - 显示作者列表

    在 views.py 中添加展示作者列表的函数 from django.shortcuts import render, redirect, HttpResponse from app01 impor ...

  9. Mysql开启审计功能

    第一种经验证,有效. 第一种用macfee的mysql审计插件. 下载地址:https://bintray.com/mcafee/mysql-audit-plugin/release/1.1.4-72 ...

  10. maven:清除lastUpdated文件

    项目使用maven管理jar包,很容易因为各种原因(网速慢.断网)导致jar包下载不下来,出现很多.lastUpdated文件.这些文件一个一个删除太麻烦.下面是全部删除的方法 windows系统 c ...