欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

2 Nginx服务器 --windows安装及虚拟机上Linux安装

程序员文章站 2022-07-09 17:03:51
...

反向代理说明 --用户只知道反向代理服务器(域名)不知道也无需知道真正的服务器,用户只要获取到他想要的数据即可!!

正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。一般是客户端无法直接访问到目标服务器才使用正向代理,让正向代理服务器(它能连接到目标服务器)去链接目标服务器获取数据。–目标服务器只知道正向代理服务器从它那获取了数据而并不会知道真实需要数据的客户端,从而保护了客户端信息!!–一般条件下网络通讯时会使用正向代理.

Nginx(反向代理服务器) 特点:
1.内存少 不超过2M tomcat服务器启动 300-500M
2.并发能力强 并发3万-5万次 tomcat并发 150-220之间
3.Nginx使用C语言开发. --底层语言开发特点-速度快!!

Nginx安装和下载
2 Nginx服务器 --windows安装及虚拟机上Linux安装
windows中安装(解压后双击安装–下一步下一步即可…)注意事项:
1.Nginx服务器启动时会占用80端口.
2.Nginx服务安装时不要出现中文+空格问题 windows中尽量不要安装在C盘.
3.Nginx底层开发是用C语言写的,.所以注释 使用#号 独占一行完成注释

nginx命令

2 Nginx服务器 --windows安装及虚拟机上Linux安装
命令:
启动命令: start nginx
重启命令: nginx -s reload
关闭命令: nginx -s stop

conf目录里面nginx.conf配置文件 --配置代理及跳转的信息

# nginx 需要使用http/https协议的
http {
	#反向代理服务  一个服务就是一个server
    server {
    	# nginx监听的端口号  默认监听80端口
        listen       80;
        server_name  localhost;
		# 反向代理实现  / 代表拦截所有请求
        location / {
        	# root 转向到目录中 html  index 默认访问页面
        	#root 代表文件目录
			#index 代表默认的访问页面
			#proxy_pass 代表发起url请求
            root   html;
            index  index.html index.htm;
        }
	}
	
#配置图片服务器 一个服务就是一个server
	server{
		listen 80;
		server_name image.jt.com;
		location / {
			#由于windows操作系统问题 所以需要替换/
			root D:/JT-SOFT/images;
		}
	}
#配置后台管理系统
	server {
		listen 80;
		server_name manage.jt.com;
		location / {
			#proxy_pass http://localhost:8091;
			proxy_pass http://jtW;
		}
	}
	#配置集群的关键字upstream   通过集群配置tomcat服务器
	#默认: 1.轮询的机制  2.权重策略 server 127.0.0.1:8081 weight=6;
	#3.IPHASH
	# ip_hash;
	# server 127.0.0.1:8081 weight=6;
	upstream jtW {
		server 127.0.0.1:8081;
		server 127.0.0.1:8082;
		server 127.0.0.1:8083;
	}
}

IPHASH原理介绍:–取模几与代理的服务器数量一致
2 Nginx服务器 --windows安装及虚拟机上Linux安装

Nginx属性

down属性–如果tomcat服务器发生了宕机的现象,则通过配置文件标识down的属性,则nginx将不会再次访问故障机.

server 127.0.0.1:8081 down;

backup属性–备用机

server 127.0.0.1:8083 backup;

tomcat高可用配置–max_fails=1 配置nginx访问服务器的最大的失败次数.–fail_timeout=60s; 理解为一个时间周期. 如果发现服务器宕机,则在60秒内不会再次访问故障机.

server 127.0.0.1:8083 max_fails=1 fail_timeout=60s;

当没有域名时本机上可修改hosts文件来测试–该文件可以实现域名与IP地址的映射关系.但是只对本机有效

C:\Windows\System32\drivers\etc

#左侧写IP地址   右侧写域名  中间使用空格分隔

#为了实现Linux发布修改如下

#192.168.126.129  image.jt.com

#192.168.126.129  manager.jt.com

127.0.0.1   image.jt.com

127.0.0.1   manage.jt.com

127.0.0.1   www.jt.com

127.0.0.1   sso.jt.com

动态获取端口

2 Nginx服务器 --windows安装及虚拟机上Linux安装
编辑PortController --测试nginx反向代理的服务器集群用,看看是哪一个端口的服务器在响应客户端…

package com.jt.controller;
@RestController
public class PortController {
    /**
     * 通过Spring容器动态获取YML配置文件中的端口即可
     */
    @Value("${server.port}")
    private int port;
    @RequestMapping("/getPort")
    public String getPort(){
        return "当前访问的端口号为:"+port;
    }
}

搭建tomcat服务器集群 --将项目打成不同端口号的war包后,cmd命令

java -jar 808X.war; --分别启动项目

项目打包操作–先修改端口号之后,将maven进行打包操作

2 Nginx服务器 --windows安装及虚拟机上Linux安装

相关标签: java nginx