Nginx云服务器是如何实现负载均衡和动静分离的-创新互联
下文给大家带来Nginx云服务器是如何实现负载均衡和动静分离的,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用创新互联在行业内累计的经验来做一个解答。
创新互联公司专注于企业全网营销推广、网站重做改版、连山网站定制设计、自适应品牌网站建设、HTML5、商城网站制作、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为连山等各大城市提供网站开发制作服务。实验环境
Nginx云服务器(192.168.13.177)
Tomcat1服务器(192.168.13.151)
Tomcat2服务器 (192.168.13.178)
client测试机
一,负载均衡
1,在Tomcat1,Tomcat2上安装Tomcat服务
[root@tomcat1 ~]# systemctl stop firewalld.service ##关闭防火墙
[root@tomcat1 ~]# mkdir /abc
[root@tomcat1 ~]# mount.cifs //192.168.100.3/LNMP-C7 /abc/
[root@tomcat1 ~]# cd /abc/tomcat/
[root@tomcat1 tomcat]# tar zxvf jdk-8u91-linux-x64.tar.gz -C /usr/local/ ##解压JDK
[root@tomcat1 tomcat]# vim /etc/profile ##配置环境变量
##大G末行加入
export JAVA_HOME=/usr/local/jdk1.8.0_91
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
[root@tomcat1 tomcat]# source /etc/profile ##刷新配置文件
[root@tomcat1 tomcat]# tar zxvf apache-tomcat-8.5.16.tar.gz -C /usr/local/ ##解压
[root@tomcat1 tomcat]# cd /usr/local/
[root@tomcat1 local]# mv apache-tomcat-8.5.16/ tomcat
[root@tomcat1 local]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/
##将启动和关闭脚本便于系统识别
[root@tomcat1 local]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/
[root@tomcat1 local]# mkdir -p /web/webapp1 ##创建站点
[root@tomcat1 local]# vim /web/webapp1/index.jsp ##写入jsp网页内容
##jsp网页内容
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
JSP test1 page
<% out.println("Welcome KGC Web");%> ##输出信息
[root@tomcat1 local]# vim /usr/local/tomcat/conf/server.xml ##修改Tomcat配置文件
##添加站点信息
[root@tomcat1 ~]# startup.sh ##启动服务
##Tomcat上网页内容为accp其他配置一样
2,在Nginx服务器上安装Nginx
[root@nginx ~]# systemctl stop firewalld.service ##关闭防火墙
[root@nginx ~]# setenforce 0
[root@nginx ~]# yum install pcre-devel zlib-devel gcc gcc-c++ make -y ##安装环境必要组件
[root@nginx ~]# mkdir /abc
[root@nginx ~]# mount.cifs //192.168.100.3/LNMP-C7 /abc/ ##挂载
Password for root@//192.168.100.3/LNMP-C7:
[root@nginx ~]# cd /abc/
[root@nginx abc]# tar zxvf nginx-1.12.2.tar.gz -C /usr/local/ ##解压
[root@nginx abc]# useradd -M -s /sbin/nologin nginx ##创建系统用户
[root@nginx abc]# cd /usr/local/nginx-1.12.2/
[root@nginx nginx-1.12.2]# ./configure \ ##配置
> --prefix=/usr/local/nginx \
> --user=nginx \
> --group=nginx \
> --with-http_stub_status_module \
> --with-http_gzip_static_module \
> --with-http_flv_module
[root@nginx nginx-1.12.2]# make && make install ##编译安装
3,修改Nginx配置文件
[root@nginx nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
upstream tomcat-server { #添加地址池
server 192.168.13.151:8080 weight=1;
server 192.168.13.178:8080 weight=1;
}
server {
listen 80;
.....省略
location / {
root html;
index index.html index.htm;
proxy_pass http://tomcat-server; #添加代理,调用服务器地址池
}
[root@nginx nginx-1.12.2]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ ##便于系统识别
[root@nginx nginx-1.12.2]# nginx ##开启服务
4,使用client测试机访问nginx代理服务器
二,动静分离
1,在Nginx上修改配置文件
[root@nginx nginx-1.12.2]# vim /etc/init.d/nginx ##编写service启动脚本
#!/bin/bash
# chkconfig: - 99 20
# description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
$PROG
;;
stop)
kill -s QUIT $(cat $PIDF)
;;
restart)
$0 stop
$0 start
;;
reload)
kill -s HUP $(cat $PIDF)
;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
exit 0
[root@nginx nginx-1.12.2]# chmod +x /etc/init.d/nginx
[root@nginx nginx-1.12.2]# chkconfig --add nginx
[root@nginx nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf
server {
...省略...
location ~.*.jsp$ { ##匹配jsp页面跳转代理服务器池
proxy_pass http://tomcat-server;
proxy_set_header Host $host;
}
location / {
root html/test; ##修改站点
index index.html index.htm;
proxy_pass http://tomcat-server;
}
[root@nginx nginx-1.12.2]# vim /usr/local/nginx/html/index.html ##编写静态网页
静态页面
静态页面
这是个静态页面
[root@nginx nginx-1.12.2]# service nginx stop ##关闭开启服务
[root@nginx nginx-1.12.2]# service nginx start
2,在Tomcat1,Tomcat2上创建jsp动态页面
[root@tomcat1 ~]# mkdir /usr/local/tomcat/webapps/test
[root@tomcat1 ~]# vim /usr/local/tomcat/webapps/test/index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.Date" %>
<%@ page import="java.text.SimpleDateFormat" %> ##开头申明
动态页面
动态页面1
##在Tomcat2上修改为动态页面22
//访问静态
http://192.168.13.177/
//访问动态
http://192.168.13.177/test/index.jsp
Nginx处理静态图片,Tomcat处理动态页面
1,在Tomcat1,Tomcat2上页面添加图片
[root@tomcat1 ~]# vim /usr/local/tomcat/webapps/test/index.jsp
动态页面
//添加页面图片
[root@tomcat01 local]# vim /usr/local/tomcat/conf/server.xml
#在第149行下追加以下条目,
[root@tomcat1 test]# shutdown.sh ##关闭重启
[root@tomcat1 test]# startup.sh
2,在Nginx上修改配置文件
[root@nginx nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf
location ~.*\.(gif|jpg|jpeg|png|bmp|swf|css)$ {
root html/test;
expires 30d;
}
[root@nginx nginx-1.12.2]# mkdir /usr/local/nginx/html/test
[root@nginx nginx-1.12.2]# cp /abc/11.jpg /usr/local/nginx/html/test/
#重启服务
[root@nginx html]# service nginx restart
3,使用client测试
看了以上关于Nginx云服务器是如何实现负载均衡和动静分离的,如果大家还有什么地方需要了解的可以在创新互联行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,创新互联技术工程师在行业内拥有十几年的经验了。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享文章:Nginx云服务器是如何实现负载均衡和动静分离的-创新互联
文章位置:http://hbruida.cn/article/ccscge.html