系统架构图

96分布式电商项目 - 项目部署_tomcat

网络拓扑图

96分布式电商项目 - 项目部署_tomcat_02

服务器台数?

并发量:2000–3000

(接口)单元测试,集成测试

测试服务器:

1,svn+maven+Hudson+jekins (持续集成测试环境)

2,git+maven+jekins+docker (持续集成测试环境)

服务器规划

Mysql:2台服务器(主,备)。【配置高可用】

Solr:7台(3台Zookeeper,4台solrcloud)

Redis:8台(一主一备,4台主机) 6

Redis3.0后:

redis具有高可用特性,集群,主节点宕机,从节点直接转换为主节点。

【哨兵机制】–监控集群—主从节点当中,主机宕机,哨兵监控机制,会把从机变为主机,

redis集群如何实现高可用?

96分布式电商项目 - 项目部署_服务器_03

ActiveMq:2台

Dubbo注册中心:3台(zookeeper至少3台)

图片服务:3台 fastDFS分布式文件系统 阿里巴巴

Nginx:2台

E3mall-manager:2台

E3mall-content:2台

E3mall-search:2台

E3mall-user:2台

E3mall-order:2台

E3mall-cart:2台

E3mall-manager-web:1台

E3mall-portal-web:2台

E3mall-search-web:2台

E3mall-item-web:2台

E3mall-sso-web:2台

E3mall-cart-web:2台

E3mall-order-web:2台

共需要52台服务器

虚拟机规划

96分布式电商项目 - 项目部署_maven_04

域名规划

96分布式电商项目 - 项目部署_tomcat_05

所有域名都绑定到反向代理服务器上。

网站所有的域名都需要绑定到反向代理服务器上。

工程部署

安装Linux版mysql

设置mysql密码:

​/usr/bin/mysqladmin –u root password newpassword​

给mysql用户授权:

授权后,才能进行远程连接:(授权命令只能在ROOT用户下执行)

​GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;​

Tomcat热部署步骤

Tomcat热部署,tomcat启动状态,发布项目到tomcat。直接运行项目。

第一步:安装tomcat。

96分布式电商项目 - 项目部署_服务器_06

部署5台tomcat,用来提供后台服务。

每台服务器端口不能冲突。

第二步:在tomcat下配置用户及用户权限,需要修改conf/tomcat-user.xml。

第三步:配置maven插件,指定工程部署的服务的位置以及用户名、密码

第四步:使用maven tomcat插件的deploy、redeploy命令,部署工程。

一个服务部署到一个tomcat下

1、部署服务层工程需要5个tomcat实例。需要修改tomcat端口

2、配置tomcat的用户及权限。

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

3、在pom文件中tomcat插件配置项中添加如下内容:

<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.66.66:9005/manager/text</url>
<username>tomcat</username>
<password>tomcat</password>
</configuration>
</plugin>
</plugins>
</build>

Path“/”工程将部署到webapps/ROOT目录下。

4、tomcat7:redeploy

第一次部署使用tomcat7:deploy

之后的部署使用:tomcat7:redeploy