Nginx服务器

    科技2022-07-11  81

    1、Nginx介绍

    Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。 其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

    特点: 1.内存少 不超过2M tomcat服务器大约占用600M 2.并发能力强 3-5万次/秒 tomcat服务器大约 150-220之间

    2、Nginx安装使用

    注意事项:

    不要将nginx放到C盘及系统目录中 注意中文路径和空格.nginx服务器启动的速度特别快, 窗口会闪退 只启动一次即可nginx启动会占用80端口.nginx命令的运行必须在nginx.exe所在的目录中执行.

    2.1、Nginx命令

    1).启动命令 start nginx 2).重启命令 nginx -s reload 3).停止命令 nginx -s stop

    2.2、Nginx服务器启动项说明

    2.3、关于nginx反向代理说明

    http { # 一个反向代理就是一个server server { #监听 80端口 listen 80; #监听的域名 域名不能重复. server_name localhost; #执行的反向代理的动作 / 拦截所有的路径 location / { # root关键字 代理的是一个目录 root html; #默认跳转页面 index index.html index.htm; } } }

    3、Nginx实现图片回显

    3.1、Nginx配置

    # 图片服务器代理 image.jt.com:80 server { listen 80; server_name image.jt.com; location / { # 转向目录 root D:/JT-SOFT/images; } }

    3.2、修改hosts文件

    3.2.1、hosts文件的说明

    3.2.2、hosts文件的位置

    3.2.3、以超级管理员运行

    # 京淘配置 #左侧写IP地址 右侧写域名 中间使用空格分隔 127.0.0.1 image.jt.com 127.0.0.1 manage.jt.com #实现 nginx的 #192.168.126.129 image.jt.com #192.168.126.129 manage.jt.com 127.0.0.1 www.jt.com #Bug 有时在使用该软件时可能会出现丢失字母的现象. 127.0.0.1 sso.jt.com

    4、Nginx实现Tomcat集群部署

    4.1、项目部署

    4.2、服务器反向代理

    #配置京淘后台管理服务器 # manage.jt.com localhost:8091服务器 server { listen 80; server_name manage.jt.com; location / { #映射服务器 proxy_pass http://localhost:8091; } }

    4.3、修改Nginx服务器之后,重启Nginx

    4.4、动态获取当前服务器端口号

    @RestController public class PortController { //从spring服务器中动态的获取端口号 @Value("${server.port}") private Integer port; @RequestMapping("/getPort") public String getPort(){ return "当前服务器访问的端口号:"+port; } }

    4.4、项目打包

    之后从项目的target目录中动态获取jar包文件,准备集群部署。

    4.5、项目发布命令

    注意事项: 当前的命令执行 会占用dos命令窗口 打印控制台信息. 当dos命令窗口关闭 服务器停止. 退出dos命令窗口: ctrl + c

    java: java -jar 8081.war

    5、Nginx负载均衡实现

    5.1、轮询机制

    说明:按照配置文件的顺序,依次访问服务器。

    #配置京淘后台管理服务器 # manage.jt.com localhost:8091服务器 server { listen 80; server_name manage.jt.com; location / { #映射服务器 #proxy_pass http://localhost:8091; proxy_pass http://jtWindows; } } # 配置tomcat服务器集群 1.轮询策略 upstream jtWindows { #server代表服务器地址 server 127.0.0.1:8081; server 127.0.0.1:8082; }

    5.2、权重机制

    说明::按照权重的设置,让性能更优的服务器多处理请求。

    # 配置tomcat服务器集群 1.轮询策略 2.权重策略 upstream jtWindows { #server代表服务器地址 server 127.0.0.1:8081 weight=8; server 127.0.0.1:8082 weight=2; }

    5.3、IPHASH策略(了解)

    由于某些数据与服务器进行了绑定,则后来必须要求用户访问指定的服务器时,使用IPHASH策略

    # 配置tomcat服务器集群 1.轮询策略 2.权重策略 3.iphash策略 upstream jtWindows { #server代表服务器地址 ip_hash; server 127.0.0.1:8081 weight=8; server 127.0.0.1:8082 weight=2; }
    Processed: 0.038, SQL: 8