千家信息网

tomcat+nginx集群是怎样的

发表于:2024-09-27 作者:千家信息网编辑
千家信息网最后更新 2024年09月27日,tomcat+nginx集群是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。内容要点:一、原理解释:(1)动静分离
千家信息网最后更新 2024年09月27日tomcat+nginx集群是怎样的

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

内容要点:

一、原理解释:

(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总用量 25980drwxr-xr-x 2 root root     4096 3月   7 22:09 bin-rw-r--r-- 1 root root     3244 12月 16 03:45 COPYRIGHTdrwxr-xr-x 3 root root      132 3月   7 22:09 include-rw-r--r-- 1 root root  5207434 12月 12 17:07 javafx-src.zipdrwxr-xr-x 5 root root      185 3月   7 22:09 jredrwxr-xr-x 5 root root      245 3月   7 22:09 lib-rw-r--r-- 1 root root       40 12月 16 03:45 LICENSEdrwxr-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-amd64export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jarexport 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]# lsrh[root@localhost opt]# vim abc.javapublic class HelloWorld{    public static void main(String[] args){       System.out.println( "Hello, World!" );    }}[root@localhost opt]# javac abc.java       #编译[root@localhost opt]# lsabc.class  abc.java rh[root@localhost opt]# java abc                #运行abc-------------------------------------安装配置tomcat--------------------------------------------------------------tar zxvf apache-tomcat-9.0.16.tar.gz -C /optcd /opt/lsmv apache-tomcat-9.0.16/ /usr/tomcat8cd /usr/lscd tomcat8/cd conf/cd ../bin/##开启tomcat服务[root@localhost bin]# ./startup.sh Using CATALINA_BASE:   /usr/local/tomcat8Using CATALINA_HOME:   /usr/local/tomcat8Using CATALINA_TMPDIR: /usr/local/tomcat8/tempUsing JRE_HOME:        /usr/javaUsing CLASSPATH:       /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jarTomcat 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/webapp1vim /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.0useradd -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_modulemake && 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]# lsconf  html  logs  sbin[root@localhost nginx]# cd sbin/[root@localhost sbin]# lsnginx[root@localhost sbin]# ./nginx -tnginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is oknginx: 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访问

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

服务 代理 服务器 内容 用户 客户 客户端 测试 原始 网站 网页 环境 实验 解释 动静 原理 就是 目录 变量 文件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州博客网络技术服务 教育软件开发毕业设计 服务器主板上管理接口怎么用 智慧城市通信网络安全 分布式数据库应用 网络安全隐患排查工作机制 多主多从数据库一致性 注销苹果手机无法连接服务器 网络技术学习用品推荐 涧西区网络安全保卫大队 云服务器爆品秒杀 广州科盟互联网科技连锁有限公司 国家建立网络安全监督 计算机网络技术认证书 安胜网络安全技术峰会 青岛市计算机网络技术龙头企业 长春软件开发可以吉网传媒好 平顶山软件开发培训班 网络安全保密检查及整改情况 北斗网络技术服务中心 黑龙江云端服务器托管服务器 导致输入数据库无效的原因有哪些 网络安全超级风口 人大金仓数据库授权文件丢了 金融数据库 知乎 邯郸汇才软件开发公司 软件开发专业学计算机知识吗 分布式数据库面临的技术问题 网络安全 人民政府 国家网络安全法第十九条
0