• 高性能web服务器nginx和反向代理


    高性能web服务器——nginx

    一、 简介

    1. nginx是什么?

    l 是一个使用c语言开发的高性能的http服务器和反向代理服务器以及电子邮件(IMAP/POP3)代理服务器。

    是俄罗斯的程序设计师Igor Sysoev为俄罗斯访问量第二的 Rambler.ru 站点开发的。

    2. nginx的优点?

    l 轻量级

    l 在应对高并发情况时,能保持低资源低消耗高性能

    l 高度模块化的设计,配置简洁

    官方测试nginx能够支撑5万并发量,并且cpu、内存等资源消耗却非常低,运行非常稳定

    3. nginx应用场景?

    l http服务器Nginx可以独立提供http服务,可以做网页静态服务器

    l 虚拟主机。可以实现在一台服务器虚拟出多个网站

    l 反向代理,负载均衡

    4. nginx版本下载

    l http://nginx.org/en/download.html

    二、 nginx安装

    1. 安装准备

    输入 yum -y install gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

    2. nginx安装

    解压

     

    进入解压目录

     

    复制下面这段,执行configure,生成Makefile

    ./configure

    --prefix=/usr/local/nginx

    --pid-path=/var/run/nginx/nginx.pid

    --lock-path=/var/lock/nginx.lock

    --error-log-path=/var/log/nginx/error.log

    --http-log-path=/var/log/nginx/access.log

    --with-http_gzip_static_module

    --http-client-body-temp-path=/var/temp/nginx/client

    --http-proxy-temp-path=/var/temp/nginx/proxy

    --http-fastcgi-temp-path=/var/temp/nginx/fastcgi

    --http-uwsgi-temp-path=/var/temp/nginx/uwsgi

    --http-scgi-temp-path=/var/temp/nginx/scgi

    编译

     

    安装

     

    创建链接

     

    验证配置有没有问题

     

    若出现少文件夹的报错,自己创建一下

     

    3. nginx启动

    检查防火墙,是关闭的状态

     

    启动,查看进程

     

    浏览器访问

     

    4. nginx停止

    关闭并查看进程

     

    5. nginx刷新配置

    启动后,若修改配置,如下刷新即可,不需要重启nginx

     

    三、 nginx详解

    1. nginx安装目录

     

    l conf:nginx的配置文件

    l html:nginx默认访问的根目录,存放静态资源

    l sbin:存放nginx运行脚本

    2. nginx配置文件

     

     

    l worker_processes:工作进程:数目。根据硬件调整,通常等于CPU数量或者2倍于CPU。

    l worker_connections:每个工作进程的最大连接数量。根据硬件调整,和前面工作进程配合起来用,尽量大,但是别把cpu跑到100%就行。

    l include:设置支持的文件类型,具体内容在mime.types中

    l sendfile:sendfile指令指定 nginx 是否调用sendfile 函数(zero copy 方式)来输出文件,对于普通应用,必须设为on。如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络IO处理速度,降低系统uptime。

    l keepalive_timeoutkeepalive超时时间。

    l server:一个server就是一个虚拟机

    l listen:server虚拟机的端口号

    l server_name:server虚拟机的主机名

    l location:默认访问的资源

    l root html:虚拟主机的根目录

    四、 nginx基本使用

    1. web站点

    如下目录,存的东西,外部可直接访问

     

    2. 多虚拟主机

    省钱,省事

    直接修改配置

     

    在原server下,再加一个server

     

    复制一份html文件夹,叫py,跟配置对应上

     

    修改index.html,让自己能区分

     

    刷新配置

     

    3. 404页面设置

    配置里,可以把如下注释打开,自己创建错误页面

     

    创建一个对应的404.html

     

    刷新配置

    4. nginx反向代理

    如下,此时,访问80端口,实际上会转发到85端口

     

    刷新配置

     

    访问80,跳转到了85

     

    5. nginx负载均衡

    修改配置文件

    添加负载均衡池,80端口反向代理到负载均衡池

     

    下面多一个95端口的server

     

    复制py,创建个p2,修改里面的index.html,有区分就行

     

    刷新配置

     

    页面访问,此时实现了反向代理到85和90,也是按照权重去访问的

     

  • 相关阅读:
    Android SDK 默认位置
    Android点击按钮后改变颜色
    Android设置字体样式
    Android清除缓存的实现
    AndroidStudio Gradle下载速度慢解决方法
    ERROR: SSL peer shut down incorrectly错误解决(Android Studio)
    Android两个页面跳转过程时传递值
    android报错android.view.ViewRootImpl$CalledFromWrongThreadException【本文转载】
    去除searchView的黑框去除
    Caused by: java.lang.IllegalStateException: System services not available to Activities before onCreate()
  • 原文地址:https://www.cnblogs.com/zhang-da/p/13045442.html
Copyright © 2020-2023  润新知