快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

tomcat+nginx集群是怎样的-创新互联

tomcat+nginx集群是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

创新互联主营云溪网站建设的网络公司,主营网站建设方案,重庆APP开发,云溪h5微信小程序开发搭建,云溪网站营销推广欢迎云溪等地区企业咨询

内容要点:

一、原理解释:

(1)动静分离

(2)正向代理和反向代理

二、实验示例

一、原理解释:

(1)动静分离

为了提高网站的响应速度,减轻程序服务器(Tomcat,Jboss等)的负载,对于静态资源比如图片,js,css等文件,我们可以在反向代理服务器中进行缓存,这样浏览器在请求一个静态资源时,代理服务器就可以直接处理,而不用将请求转发给后端服务器。用户请求的动态文件比如servlet,jsp则转发给Tomcat,Jboss服务器处理,这就是动静分离。这也是反向代理服务器的一个重要的作用。

(2)正向代理和反向代理

1、正向代理:

解释:也就是传说中的代理,他的工作原理就像一个跳板,简单的说,我是一个用户,我访问不了某网站,但是我能访问一个代理服务器,这个代理服务器呢,他能访问那个我不能访问的网站,于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容,代理服务器去取回来,然后返回给我,从网站的角度,只在代理服务器来取内容的时候有一次记录,有时候并不知道是用户的请求,也隐藏了用户的资料,这取决于代理告不告诉网站。

结论:正向代理是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。就像要访问google用***代理***去访问(用户知道要访问真正的服务器)

2、反向代理:

解释:例用户访问 http://www.example.com/readme ,但www.example.com上并不存在readme页面,他是偷偷从另外一台服务器上取回来,然后作为自己的内容吐给用户,但用户并不知情,这里所提到的 www.example.com 这个域名对应的服务器就设置了反向代理功能。

结论:反向代理正好相反,对于客户端而言它就像是原始服务器,并且客户端不需要进行任何特别的设置。客户端向反向代理 的命名空间(name-space)中的内容发送普通请求,接着反向代理将判断向何处(原始服务器)转交请求,并将获得的内容返回给客户端,就像这些内容 原本就是它自己的一样。(用户不知道要访问真正的服务器)

Nginx 实现负载均衡就是通过反向代理来实现的

二、实验示例

实验环境:

主机               操作系统        IP地址             主要软件

Nginx服务器     CentOS 7.4x86_64    192.168.109.185      nginx-1.12.0.tar.gz

Tomcat服务器1   CentOS 7.4x86_64   192.168.109.188       apache-tomcat-9.0.16.tar.gz

Tomcat服务器2   CentOS 7.4x86_64    192.168.109.189       apache-tomcat-9.0.16.tar.gz

----------------------------------------------------------------------------------------------------------------------------------------

实验步骤:

-----------------------------------------------------------------安装JDK-------------------------------------------------------------------- 将jdk 软件包上传到 /root目录下 安装jdk [root@localhost ~]# rpm -ivh jdk-8u201-linux-x64.rpm  警告:jdk-8u201-linux-x64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID ec551f03: NOKEY 准备中...                          ################################# [100%] 正在升级/安装...    1:jdk1.8-2000:1.8.0_201-fcs        ################################# [100%] Unpacking JAR files...         tools.jar...         plugin.jar...         javaws.jar...         deploy.jar...         rt.jar...         jsse.jar...         charsets.jar...         localedata.jar... ●确认jdk安装目录● [root@localhost ~]# cd /usr/java/jdk1.8.0_201-amd64/ [root@localhost jdk1.8.0_201-amd64]# ll 总用量 25980 drwxr-xr-x 2 root root     4096 3月   7 22:09 bin -rw-r--r-- 1 root root     3244 12月 16 03:45 COPYRIGHT drwxr-xr-x 3 root root      132 3月   7 22:09 include -rw-r--r-- 1 root root  5207434 12月 12 17:07 javafx-src.zip drwxr-xr-x 5 root root      185 3月   7 22:09 jre drwxr-xr-x 5 root root      245 3月   7 22:09 lib -rw-r--r-- 1 root root       40 12月 16 03:45 LICENSE drwxr-xr-x 4 root root       47 3月   7 22:09 man -rw-r--r-- 1 root root      159 12月 16 03:45 README.html -rw-r--r-- 1 root root      424 12月 16 03:45 release -rw-r--r-- 1 root root 21103945 12月 16 03:45 src.zip -rw-r--r-- 1 root root   108109 12月 12 17:07 THIRDPARTYLICENSEREADME-JAVAFX.txt -rw-r--r-- 1 root root   155002 12月 16 03:45 THIRDPARTYLICENSEREADME.txt ##设置JDK环境变量### [root@localhost ~]# vi /etc/profile      ##末行参数新增# export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64 export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar export PATH=$JAVA_HOME/bin:$PATH [root@localhost ~]# source /etc/profile   ##环境变量生效## [root@localhost ~]# java -version            ###查看java版本## java version "1.8.0_201" Java(TM) SE Runtime Environment (build 1.8.0_201-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode) ##编辑java基础脚本,测试环境 [root@localhost profile.d]# cd /opt [root@localhost opt]# ls rh [root@localhost opt]# vim abc.java public class HelloWorld{     public static void main(String[] args){        System.out.println( "Hello, World!" );     } } [root@localhost opt]# javac abc.java       #编译 [root@localhost opt]# ls abc.class  abc.java rh [root@localhost opt]# java abc                #运行 abc -------------------------------------安装配置tomcat-------------------------------------------------------------- tar zxvf apache-tomcat-9.0.16.tar.gz -C /opt cd /opt/ ls mv apache-tomcat-9.0.16/ /usr/tomcat8 cd /usr/ ls cd tomcat8/ cd conf/ cd ../bin/ ##开启tomcat服务 [root@localhost bin]# ./startup.sh  Using CATALINA_BASE:   /usr/local/tomcat8 Using CATALINA_HOME:   /usr/local/tomcat8 Using CATALINA_TMPDIR: /usr/local/tomcat8/temp Using JRE_HOME:        /usr/java Using CLASSPATH:       /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar Tomcat started. [root@localhost bin]# netstat -natp | grep 8080 ##关闭防火墙 [root@localhost bin]# systemctl disable firewalld.service  Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@localhost bin]# systemctl stop firewalld.service  [root@localhost bin]# setenforce 0 [root@localhost bin]#  ##测试 win10 网页访问   http://192.168.109.187:8080 #加入测试页面 mkdir -pv /web/webapp1 vim /web/webapp1/index.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>        JSP test1 page         <% out.println("Welcome to test site,http://www.test1.com");%>   cd ../conf/ vim server.xml          //添加//后两行  docBase:web应用的文档基准目录                        reloadable 设置监听”类“是否变化                        path=""设置默认"类" ##启动服务 cd ../bin/ ./shutdown.sh ./startup.sh ##测试 win10 网页访问   http://192.168.109.187:8080 --------------------------------------------安装另一台tomcat------------------------------------------ 同样步骤 #测试网页改为teas2 与1做区分     <% out.println("Welcome to test site,http://www.test2.com");%> ##测试 win10 网页访问   http://192.168.109.187:8080 --------------------------------------------编译nginx-------------------------------------------------- yum -y install gcc gcc-c++ make pcre-devel zlib-devel openssl-devel  cd /opt/nginx-1.12.0 useradd -s /bin/false www [root@localhost nginx-1.12.0]# ./configure \ --prefix=/usr/local/nginx \ --user=www \ --group=www \ --with-file-aio \ --with-http_stub_status_module \ --with-http_gzip_static_module \ --with-http_flv_module \ --with-http_ssl_module make && make install [root@localhost nginx-1.12.0]# cd /usr/local/nginx/ [root@localhost nginx]# cd conf/ [root@localhost conf]# vim nginx.conf     keepalive_timeout  65;     #gzip  on;         upstream tomcat-server {                 server 192.168.109.188:8080 weight=1;                   #添加                 server 192.168.109.189:8080 weight=1;                 } ...         #access_log  logs/host.access.log  main;         location / {             root   html;             index  index.html index.htm;             proxy_pass http://tomcat-server;             #添加此行配置网页跳转         } ###启动服务,关闭防火墙 [root@localhost conf]# cd ../ [root@localhost nginx]# ls conf  html  logs  sbin [root@localhost nginx]# cd sbin/ [root@localhost sbin]# ls nginx [root@localhost sbin]# ./nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful [root@localhost sbin]# ./nginx  [root@localhost sbin]# netstat -natp | grep nginx  tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      53555/nginx: master  [root@localhost sbin]# systemctl disable firewalld.service  Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@localhost sbin]# systemctl stop firewalld.service  [root@localhost sbin]# setenforce 0 [root@localhost sbin]#  -------------------------------------------------测试------------------------------ win10访问

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网页标题:tomcat+nginx集群是怎样的-创新互联
转载来于:http://6mz.cn/article/phgsi.html

其他资讯