1.什么是nginx?
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
2. 为什么使用nginx?
3.如何使用nginx
安装软件的类型: tar.gz ipm 源码文件
(1)安装nginx依赖环境
1. yum install -y gcc-c++
2. yum install -y pcre pcre-devel
3. yum install -y zlib zlib-devel
4. yum install -y openssl openssl-devel
(2)把ngixn上传到指定的linux目录
cd /usr/nginx
(3)解压
tar -zxvf nginx-1.18.0.tar.gz
(4)进入解压目录
cd nginx-1.18.0
(5)指定nginx的安装路径
./configure --prefix=/usr/nginx
(6)安装
make install
(7)启动ngixn
./nginx
(8)停止nginx
./ngixn -s stop
查看启动状态
ps -ef | grep 进程名
4.了解一下nginx的配置文件
5.反向代理
正向代理即是客户端代理, 代理客户端, 服务端不知道实际发起请求的客户端.
反向代理即是服务端代理, 代理服务端, 客户端不知道实际提供服务的服务端看图理解一:
看图理解二:
正向代理: 买票的黄牛
反向代理: 租房的代理
nginx如何实现反向代理
1.创建一个SpringBoot web应用程序
2.idea把web工程打包安装
把jar文件上传到linux并启动
java -jar xxx.jar
测试:
6.负载均衡
网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。
1)准备条件
1. 启动两应用服务器。为了减少虚拟机的启动个数 我都在一个虚拟机中启动了应用服务器。
(2)配置nginx
(3)测试
7.动静分离
1. 动态资源 jsp thymeleaf
2. 静态资源: images css js
创建一个springboot工程
把项目打包jar并放入linux系统
在linux上启动项目
修改nginx配置文件
测试:
8.nginx集群的搭建
1.两个虚拟机: 192.168.125.34
(Master) 192.168.125.35(BACKUP)
需要在每一个nginx服务器上安装keepalived
yum install keepalived 安装keepalived yum:联网安装
rpm -q -a keepalived 检查是否安装keepalived
ps -ef | grep keepalived
默认安装路径: /etc/keepalived
开启所有的nignx 和 keepalived
./nginx
systemctl start keepalived.service
测试:
让主节点宕机
./nginx
systemctl start keepalived.service
再次访问