什么是nginx?
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发能力强,
中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
为什么使用nginx?
当开发的系统访问量过大时,普通的tomcat服务器已经不能满足,这时就需要搭建Web服务器集群,部署多台服务器来满足庞大的访问量。
nginx常用做静态内容服务和代理服务器(不是你FQ那个代理),直面外来请求转发给后面的应用服务
如何使用nginx
- 安装nginx依赖的环境
yum install -y gcc-c++ yum install -y pcre pcre-devel yum install -y zlib zlib-devel yum install -y openssl openssl-devel
- 把nginx压缩包上传到指定的linux目录 并解压
mkdir /usr/nginx
- 指定nginx的安装目录 必须进入nginx目录
./configure --prefix=/usr/nginx
- 编译nginx并安装
make install
- 安装后
- 启动nginx-----没有配置环境变量的话,必须在nginx安装目录下的sbin目录下运行
./nginx ./nginx -s stop: 关闭nginx ./nginx -s reload: 重新加载 【当修改完配置文件后】
- 查看nignx是否启动成功
ps -ef | grep nginx
- 浏览器访问nginx
了解一下nginx的配置文件
进入nginx安装目录下的conf文件
反向代理
反向: 表示代理的为服务器。对应客户来说不知道访问的是哪个服务器。
正向: 表示代理的是客户端。对应服务器来说不知道是哪个用户访问。 翻墙软件
正向代理中,proxy和client同属一个LAN,对server透明;
反向代理中,proxy和server同属一个LAN,对client透明。
实际上proxy在两种代理中做的事都是代为收发请求和响应,不过从结构上来看正好左右互换了下,所以把后出现的那种代理方式叫成了反向代理。
nginx如何实现反向代理
- 准备一个应用服务器。tomcat---------将idea中的项目打包成jar包放入linux并运行
- 修改nginx的配置文件.nginx.conf
- 测试
负载均衡
网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。
- 启动两台应用服务器。为了减少虚拟机的启动个数 我都在一个虚拟机中启动了应用服务器。
- 配置nginx
- 测试
负载均衡的策略:
- 默认为轮询策略。
- 权重: weight 权重值越大访问到的频率越高。 因为以后可能服务器的配置不同,配置越高权重越大。
- iphash: 交于你们来完成 安装虚拟机时使用桥接ip