JAVAEE——宜立方商城14:项目部署规划、Tomcat热部署、反向代理的配置

时间:2022-09-12 11:39:16

1. 学习计划

1、系统部署

2. 项目部署

2.1. 项目架构讲解

JAVAEE——宜立方商城14:项目部署规划、Tomcat热部署、反向代理的配置

2.2. 网络拓扑图

JAVAEE——宜立方商城14:项目部署规划、Tomcat热部署、反向代理的配置

2.3. 系统部署

2.3.1. 部署分析

e3-manager

e3-manager-web

e3-portal-web

e3-content

e3-search

e3-search-web

e3-item-web

e3-sso

e3-sso-web

e3-cart-web

e3-order

e3-order-web

JAVAEE——宜立方商城14:项目部署规划、Tomcat热部署、反向代理的配置

共需要48台服务器。

搭建伪分布式。

2.3.2. 服务器规划

JAVAEE——宜立方商城14:项目部署规划、Tomcat热部署、反向代理的配置

2.3.3. 域名规划

序号

工程名

域名

1

e3-manager-web

manager.e3mall.cn

2

e3-portal-web

www.e3mall.cn

3

e3-search-web

search.e3mall.cn

4

e3-item-web

item.e3mall.cn

5

e3-sso-web

sso.e3mall.cn

6

e3-cart-web

cart.e3mall.cn

7

e3-order-web

order.e3mall.cn

2.3.4. Tomcat热部署

可以使用maven实现tomcat热部署。Tomcat启动时 部署工程。

Tomcat有个后台管理功能,可以实现工程热部署。

配置方法:

第一步:需要修改tomcat的conf/tomcat-users.xml配置文件。添加用户名、密码、权限。

<role rolename="manager-gui" />

<role rolename="manager-script" />

<user username="tomcat" password="tomcat" roles="manager-gui, manager-script"/>

第二步:重新启动tomcat。

使用maven的tomcat插件实现热部署:

第一步:配置tomcat插件,需要修改工程的pom文件。

<build>
<plugins>
<!-- 配置Tomcat插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<port>8081</port>
<path>/</path>
<url>http://192.168.25.135:8080/manager/text</url>
<username>tomcat</username>
<password>tomcat</password>
</configuration>
</plugin>
</plugins>
</build>

第二步:使用maven命令进行部署。
tomcat7:deploy

tomcat7:redeploy

部署的路径是“/”会把系统部署到webapps/ROOT目录下。

部署工程跳过测试:

clean tomcat7:redeploy -DskipTests

2.3.5. 工程部署

每个工程运行在不同的tomcat上,修改tomcat的端口号。

2.4. 反向代理的配置

测试时使用域名访问网站,需要修改host文件。

所有的域名应该指向反向代理服务器。

配置hosts文件:

192.168.25.141 manager.e3mall.cn

192.168.25.141 www.e3mall.cn

192.168.25.141 search.e3mall.cn

192.168.25.141 item.e3mall.cn

192.168.25.141 sso.e3mall.cn

192.168.25.141 cart.e3mall.cn

192.168.25.141 order.e3mall.cn

反向代理的配置:

#user  nobody;
worker_processes 1; #error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info; #pid logs/nginx.pid; events {
worker_connections 1024;
} http {
include mime.types;
default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on;
#tcp_nopush on; #keepalive_timeout 0;
keepalive_timeout 65; #gzip on; upstream manager.e3mall.cn {
server 192.168.25.137:8080;
}
upstream www.e3mall.cn {
server 192.168.25.137:8081;
}
upstream search.e3mall.cn {
server 192.168.25.137:8082;
}
upstream item.e3mall.cn {
server 192.168.25.138:8080;
}
upstream sso.e3mall.cn {
server 192.168.25.138:8081;
}
upstream cart.e3mall.cn {
server 192.168.25.139:8080;
}
upstream order.e3mall.cn {
server 192.168.25.139:8081;
} server {
listen 80;
server_name manager.e3mall.cn; #charset koi8-r; #access_log logs/host.access.log main; location / {
proxy_pass http://manager.e3mall.cn;
index index.html index.htm;
}
}
server {
listen 80;
server_name www.e3mall.cn; #charset koi8-r; #access_log logs/host.access.log main; location / {
proxy_pass http://www.e3mall.cn;
index index.html index.htm;
}
}
server {
listen 80;
server_name search.e3mall.cn; #charset koi8-r; #access_log logs/host.access.log main; location / {
proxy_pass http://search.e3mall.cn;
index index.html index.htm;
}
}
server {
listen 80;
server_name item.e3mall.cn; #charset koi8-r; #access_log logs/host.access.log main; location / {
proxy_pass http://item.e3mall.cn;
index index.html index.htm;
}
}
server {
listen 80;
server_name sso.e3mall.cn; #charset koi8-r; #access_log logs/host.access.log main; location / {
proxy_pass http://sso.e3mall.cn;
index index.html index.htm;
}
}
server {
listen 80;
server_name cart.e3mall.cn; #charset koi8-r; #access_log logs/host.access.log main; location / {
proxy_pass http://cart.e3mall.cn;
index index.html index.htm;
}
}
server {
listen 80;
server_name order.e3mall.cn; #charset koi8-r; #access_log logs/host.access.log main; location / {
proxy_pass http://order.e3mall.cn;
index index.html index.htm;
}
} }

JAVAEE——宜立方商城14:项目部署规划、Tomcat热部署、反向代理的配置的更多相关文章

  1. JAVAEE——宜立方商城01:电商行业的背景、商城系统架构、后台工程搭建、SSM框架整合

    1. 学习计划 第一天: 1.电商行业的背景. 2.宜立方商城的系统架构 a) 功能介绍 b) 架构讲解 3.工程搭建-后台工程 a) 使用maven搭建工程 b) 使用maven的tomcat插件启 ...

  2. JAVAEE——宜立方商城02:服务中间件dubbo、工程改造为基于soa架构、商品列表实现

    1. 学习计划 第二天:商品列表功能实现 1.服务中间件dubbo 2.工程改造为基于soa架构 3.商品列表查询功能实现. 2. 将工程改造为SOA架构 2.1. 分析 由于宜立方商城是基于soa的 ...

  3. JAVAEE——宜立方商城07:Linux上搭建Solr服务、数据库导入索引库、搜索功能的实现

    1. 学习计划 1.Solr服务搭建 2.Solrj使用测试 3.把数据库中的数据导入索引库 4.搜索功能的实现 2. Solr服务搭建 2.1. Solr的环境 Solr是java开发. 需要安装j ...

  4. JAVAEE——宜立方商城10:使用freemarker实现网页静态化、ActiveMq同步生成静态网页、Sso单点登录系统分析

    1. 学习计划 1.使用freemarker实现网页静态化 2.ActiveMq同步生成静态网页 2. 网页静态化 可以使用Freemarker实现网页静态化. 2.1. 什么是freemarker ...

  5. JAVAEE——宜立方商城08:Zookeeper&plus;SolrCloud集群搭建、搜索功能切换到集群版、Activemq消息队列搭建与使用

    1. 学习计划 1.solr集群搭建 2.使用solrj管理solr集群 3.把搜索功能切换到集群版 4.添加商品同步索引库. a) Activemq b) 发送消息 c) 接收消息 2. 什么是So ...

  6. JAVAEE——宜立方商城05:前台系统搭建、首页展示、Cms系统的实现

    1. 学习计划 1.前台系统搭建 2.商城首页展示 3.Cms系统的实现 a) 内容分类管理 b) 内容管理 4.前台内容动态展示 2. 商城首页展示 系统架构: 页面位置: 2.1. 工程搭建 可以 ...

  7. JAVAEE——宜立方商城13:Mycat数据库分片、主从复制、读写分离、100&percnt;Linux中成功安装Mysql的方法

    1 海量数据的存储问题 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB.对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求.这个时候NoSQL ...

  8. JAVAEE——宜立方商城13:订单系统实现、订单生成、Mycat数据库分片

    1. 学习计划 1.订单系统实现 2.订单生成 3.Mycat数据库分片 2. 订单系统 2.1. 功能分析 1.在购物车页面点击“去结算”按钮,跳转到订单确认页面 a) 必须要求用户登录 b) 使用 ...

  9. JAVAEE——宜立方商城12:购物车实现、订单确认页面展示

    1. 学习计划 第十二天: 1.购物车实现 2.订单确认页面展示 2. 购物车的实现 2.1. 功能分析 1.购物车是一个独立的表现层工程. 2.添加购物车不要求登录.可以指定购买商品的数量. 3.展 ...

随机推荐

  1. SecureCRT使用技巧

    原创文章转载请注明出处:@协思, http://zeeman.cnblogs.com   修改SecureCRT颜色配置 option->Global options –> Termina ...

  2. Win8&period;1无法安装&period;NET Framework 3&period;5的解决办法

    这个问题纠结了我很多天,恢复系统也没用,差点儿就重装Win8,现在终于解决了,你也来试试吧! 机型:台电X89 系统:Win8.1 with bing 故障:在未安装.NET Framework 3. ...

  3. thinkphp新增

    $m = M('content'); //与   $m = new Model('content')效果一样 $date = array( 'username' => I('username', ...

  4. Codeforces Round &num;373 &lpar;Div&period; 2&rpar; B

    Description Anatoly lives in the university dorm as many other students do. As you know, cockroaches ...

  5. asp&period;net中为什么修改了配置文件后我们不需要重启IIS

    本文转载:http://blog.itpub.net/12639172/viewspace-659819/ 大家知道,asp.net中,如果我们修改了配置文件只要把它保存之后,就会立刻反应到程序中, ...

  6. android开发之Parcelable使用详解

    想要在两个activity之间传递对象,那么这个对象必须序列化,android中序列化一个对象有两种方式,一种是实现Serializable接口,这个非常简单,只需要声明一下就可以了,不痛不痒.但是a ...

  7. ORACLE union order by

    select * from ( select a.id,a.oacode,a.custid,a.custname,a.xsz,a.salename,a.communicationtheme,a.com ...

  8. CF1101D GCD Counting

    题目地址:CF1101D GCD Counting zz的我比赛时以为是树剖或者点分治然后果断放弃了 这道题不能顺着做,而应该从答案入手反着想 由于一个数的质因子实在太少了,因此首先找到每个点的点权的 ...

  9. java 集合(三)List接口

    package cn.sasa.demo1; import java.util.ArrayList; import java.util.LinkedList; import java.util.Lis ...

  10. Java学习技术分享:Java中的原子操作

    学习java需要有一套完整的学习线路,需要有条理性,当下学习java已经有一段时间了,由当初的懵逼状态逐渐好转,也逐渐养成了写技术学习笔记的习惯,今天总结了一下java中的原子操作. 1.Java中的 ...