nginx简单介绍

Nginx的负载均衡策略可以分两大类:内置策略和扩展侧略:

内置策略包括:轮询,加权轮询,IP hash

扩展策略是:url hash ,fair

nginx.conf文件结构

1)全局块:

通常配置一运行nginx的组,用户,允许生成的work process数,PID的存放路径

2)events块

支持使用的网络事件模型,每个workprocess可以同时支持的最大连接数

3)http块

包含server块,每个server块又包含location块。

可以在http块中配置包括文件的引入,MIME-Type定义,是否使用sendfile传输文件

4)server块

和虚拟主机相连接,每个server块相当与一台虚拟主机

5)location块

基于nginx服务器收到的请求字符串(例如server_name/uri_string),对除虚拟主机名称(也可以是IP别名)之外的字符串(例如uri_string部分进行)匹配,对特定段请求进行处理,地址定向,数据缓存和应答控制等功能都是在这一部分实现的。

如果有多个匹配就记录匹配最高的那个,然后,服务器再用localtion块的中的正则uri和请求的字符串匹配,当第一个正则匹配成功以后就结束搜索,并使用这个location块处理请求,如果正则失败就使用记录的匹配度最高的localtion块处理这个请求;

location定义的三种方式;

1)location url{} 对当前路径及路径下的所有对象都有效

2)Location =url{} 只对当前路径有效

=要求请求的字符串与uri严格匹配,如果匹配成功,就停止继续搜索;

3)Location ~url{} ~做模式匹配,区分字符大小写

4)Location ~{} 不区分字符大小写

如果uri包含正则表达式 ,就必须使用~或 ~

具体指令

1)设置网络连接的序列话化

Accpet_mutex on

设置为开启的时候,将会对nginx进程连接进行序列化,防止多个进程对连接的争抢,解决惊群现象

2)

location / {
root html; ##收到网络请求后就在指定目录下寻找请求的资源;
index index.html index.htm;#设置网站的默认首页
}

3)Nginx.conf配置内容

**********************全局模块*******************
user nginx nginx; #配置用户和组
#user nobody;
worker_processes 1; #配置运行nginx生成的worker process数 #error_log logs/error.log; #配置nginx进程生成的对错误日志的解析
#error_log logs/error.log notice;
#error_log logs/error.log info; #pid logs/nginx.pid; #进程pid的文件的存放路径
**********事件模块********************************
events {
use epoll; #配置事件驱动模型
worker_connections 1024; #配置最大的连接数
}
****************http,server,location模块*********
http {
include mime.types; #定义MIME-Type
default_type application/octet-stream;
sendfile on; #允许使用sendfile方式传输
keepalive_timeout 65; ###配置连接超时间件
server {
listen 80;
server_name localhost;
#access_log logs/host.access.log main;#配置请求日志的存放路径 location / {
root html; #配置请求服务资源的根目录
index index.html index.htm;##设置网站的默认首页
}

nginx的简单介绍的更多相关文章

  1. WebSocket简单介绍

    Java后端WebSocket的Tomcat实现 一.WebSocket简单介绍 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随着HTML5的诞生,WebSoc ...

  2. Nginx负载均衡介绍

    Nginx真心牛逼 nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态.静态页面的分离,可以按照轮询.ip哈希.URL哈希.权重等多种方式 ...

  3. nginx知识点简单回顾

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  4. Linux安装Nginx以及简单理解

    1.Nginx简单介绍 ①.Nginx:一个高性能的HTTP和反向代理服务器,高并发处理很不错. ②.反向代理:在计算机世界里,由于单个服务器的处理客户端(用户)请求能力有一个极限,当用户的接入请求蜂 ...

  5. 3.Nginx常用功能介绍

    Nginx常用功能介绍 Nginx反向代理应用实例 反向代理(Reverse Proxy)方式是指通过代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并且从内部网络服 ...

  6. Docker的简单介绍及使用

    Docker介绍 Docker是Docker.Inc公司开源的一个基于LXC技术之上构建的Container容器引擎,源代码托管在GitHub上,基于Go语言并遵从Apache2.0协议开源. Doc ...

  7. nginx搭建简单的图片服务器

    传统项目一般实现图片上传的话,都会在tomcat下面建立一个图片文件夹,上传成功后,用户可以直接访问, http://ip:port/project/images/xxx.jpg; 这样在用户量少的时 ...

  8. web服务的简单介绍及apache服务的安装

    一,web服务的作用:  是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档.可以放置网站文件,让全世界浏览:   可以放置数据让全世界下载.目前最主流的三个Web服务器是Ap ...

  9. 转:Linux下使用Nginx搭建简单图片服务器

    最近经常有人问图片上传怎么做,有哪些方案做比较好,也看到过有关于上传图片的做法,但是都不是最好的,今天再这里简单讲一下Nginx实现上传图片以及图片服务器的大致理念. 如果是个人项目或者企业小项目,仅 ...

随机推荐

  1. shell脚本获取绝对路径

    当前脚本全路径 echo $(readlink -f "$0") 获取绝对路径(不带文件名) echo $(dirname $(readlink -f "$0" ...

  2. erlang创建100万个进程,每一个进程花费多少时间呢?

    最近工作需要,需要先测试一下erlang启动进程的时间开销: 看了一片博客,感觉挺好的,学习erlang推荐http://www.blogjava.net/yongboy/ 于是参照他的文章里面的一个 ...

  3. RF变量

    变量作用域 变量类型 变量作用域 case中的变量 case内部 userkeyword中的变量 userkeyword内部 文件型suite里的变量 文件suite内部,其下case均可使用 目录型 ...

  4. 1.1 DAL数据访问层

    分布式(Distributed)数据访问层(Data Access Layer),简称DAL,是利用MySQL Proxy.Memcached.集群等技术优点而构建的一个架构系统.主要目的是解决高并发 ...

  5. 解决打开AS多次提示Untrusted Server's certificate问题

    解决方法如下: 打开Studio左上角的file—>Setting-->Tools-->Server Certificates ->最后勾上 Accept non-truste ...

  6. linux如何杀掉进程(kill)

    方法/步骤1: 使用“ps -e|grep mysql”命令,查看mysql程序的对应的pid号.结果如下图:   方法/步骤2: 使用“kill -9 2891”命令,可以结束掉mysqld_saf ...

  7. PyCharm安装+破解

    PyCharm 是一款功能强大的 Python 编辑器,具有跨平台性,鉴于目前最新版 PyCharm 使用教程较少,为了节约时间,来介绍一下 PyCharm 在 Windows下是如何安装的. 这是 ...

  8. Redis 常用命令 大全

    Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3 ...

  9. java:Springmvc框架3(Validator)

    1.springmvcValidator: web.xml: <?xml version="1.0" encoding="UTF-8"?> < ...

  10. java:(九大内置对象,计算服务器访问次数,filter过滤器,MVC框架,MVC和三层架构的关系)

    1.九大内置对象: <%@ page language="java" import="java.util.*" pageEncoding="UT ...