部署分析

首先说下淘淘商城这个项目在真实环境中部署的话需要多少台服务器。

如果你写完淘淘商城这个项目,那么你会发现该项目一共有12个工程,它们分别是:

本着高可用的原则,每个工程至少要对应有两台服务器,这样12个工程至少就需要24台服务器了。

不要忘了,淘淘商城这个项目在真实环境中部署的话,还要开启好多的服务,如下表所示。

这样算下来的话,服务所需的服务器数量至少是24台,在加上12个工程至少就需要24台服务器,这样,总共需要的服务器总数至少是48台。但我们都知道,一般的小公司是绝不可能弄这么多服务器的,因为太昂贵了,比较可行的是采用伪分布式,如下图所示,搭建服务原来需要24台服务器,现在只需要7台即可。

以上12个工程在部署时,使用5台服务器便可,如下图所示。

这样规划的话,我们只需要12(7+5)台服务器就可以了。当然了,12台服务器对于一般的小公司来说,也是达不到的,这时我们便可以进一步压缩,把更多的服务合并到一台服务器上,把更多的工程合并到一台服务器上。

这里我要给大家说一点的是,我把淘淘商城这个项目中的所有工程都部署在了一台服务器上,即taotao这台虚拟机上,如下图所示,这台虚拟机所在的ip地址是192.168.81.138,而且我为这台虚拟机分配的内存是4G,应该是够用了。

还有,我们得把部署在服务器上的工程规划好,因为工程肯定是要部署到Tomcat服务器上去的,所以我们必须要弄清楚每一个工程应该部署到哪台Tomcat服务器上去。

从上图中可以知道,我们应该在taotao这台虚拟机上安装12个Tomcat服务器,并根据上图中所对应的关系将每一个工程部署在相应的Tomcat服务器上。此外,每一个Tomcat服务器的端口(应该是有三个)都得根据下表来更新。

部署工程

下面我们就要部署各个工程了,首先我们打算先部署taotao-manager这个服务层工程。这里,我们使用maven的tomcat插件来实现Tomcat热部署,Tomcat服务器有个后台管理功能,可以实现工程热部署。

部署时,咱们得遵循一个规则,就是先部署服务层工程,再部署表现层工程。

先部署服务层工程

部署taotao-manager工程

其实在上一讲中,我们已经部署好taotao-manager这个服务层工程了,工程部署成功之后,你应该可以在Dubbo监控中心的后台管理页面中看到如下图所示的服务注册信息。

部署taotao-content工程

其实你会部署taotao-manager服务层工程之后,其他的工程你就都会部署了,依葫芦画瓢难道你不会吗?还是不会的话,那我只能说再好好回去看看上一讲。

因此,这儿我不会再像上一讲那样详细地讲述一遍如何来部署taotao-content服务层工程,我只将关键的几个步骤拿出来说说。

在部署taotao-content这个服务层工程时,我们需要修改该工程的pom文件,如下图所示,添加三行配置。

与部署taotao-manager服务层工程不同的是,<url>标签里面的Tomcat热部署地址的端口号有所变化,现在是9002。大家可能会有疑问,<url>标签上面的那个<port>8083</port>配置有什么用呢?会不会对部署产生坏的影响啊?这个其实不用担心,这个port对热部署来说,没有用,这里之所以没有把它删掉是因为我们在Windows系统下开发的时候给这个工程规划的访问端口是8083,如果是在Windows系统下启动该工程的话,那么这个port就会有用,因此这个<port>8083</port>配置我们不必理会,搁那儿就行,也碍不着你什么事!

还有什么好说的呢?对了,记得修改下这个工程的taotao-content-service模块中的数据库配置文件,如下图所示,将原来的localhost修改为MySQL服务器所在的虚拟机的ip地址。

不出预料的话,应该会部署成功的,该工程部署成功之后,你应该可以在Dubbo监控中心的后台管理页面中看到多出来了两个服务注册信息。

部署taotao-search工程

同上,我也不会详细地讲述一遍如何来部署taotao-search服务层工程,而只是将其中关键的几个步骤拿出来说说。

在部署taotao-search这个服务层工程时,我们需要修改该工程的pom文件,如下图所示,添加三行配置。

与部署taotao-content服务层工程不同的是,<url>标签里面的Tomcat热部署地址的端口号有所变化,现在是9004。

记得还要修改下这个工程的taotao-search-service模块中的数据库配置文件,将原来的localhost修改为MySQL服务器所在的虚拟机的ip地址,即192.168.81.137

我本以为部署该工程会部署成功的,没想到他妈的竟然出现了一个问题,Eclipse控制台打印出了如下错误信息:

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for taotao-search 0.0.1-SNAPSHOT:
[INFO]
[INFO] taotao-search ...................................... SUCCESS [  0.728 s]
[INFO] taotao-search-interface ............................ SUCCESS [ 14.840 s]
[INFO] taotao-search-service .............................. FAILURE [  4.961 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  20.847 s
[INFO] Finished at: 2020-11-24T09:46:38+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project taotao-search-service: Compilation failure: Compilation failure:
[ERROR] /D:/Practise/taotao/taotao-search/taotao-search-service/src/main/java/com/taotao/search/service/impl/SearchServiceImpl.java:[96,9] 方法不会覆盖或实现超类型的方法
[ERROR] /D:/Practise/taotao/taotao-search/taotao-search-service/src/main/java/com/taotao/search/listener/ItemChangeMessageListener.java:[34,38] 找不到符号
[ERROR]   符号:   方法 updateSearchItemById(java.lang.Long)
[ERROR]   位置: 类型为com.taotao.search.service.SearchService的变量 searchService
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :taotao-search-service

老子真是欲哭无泪啊!代码都写得没错,测试也基本上能通过,但是部署就出现问题了,WDNMD

淘淘商城第118讲——系统部署演示相关推荐

  1. 微信小程序商城(微店)系统部署及搭建 电商类

    随着微信用户量的日益增加,在朋友圈中总会或多或少出现微商的身影,他们长篇营销图文的霸屏现象让微信好友抓狂,最后只能屏蔽这类微商.这种在朋友圈做微商(营销)的方式不仅低端,并且销售效果和营销的用户体验都 ...

  2. 一个淘淘商城项目送给你,愿你有一个灿烂的前程!

    写在前面 今天是2020年6月23日,星期二,天气晴.2020年已过一半,回想一下,这真是一个多灾多难的年份啊!可生活依然要继续,活着的人依然要继续前行.这是没道理的事情. 好了,回到主题,说说写这篇 ...

  3. 淘淘商城分布式电商系统项目总结

    淘淘商城是采用分布式架构部署的一个大型网上商城系统,类似于京东商城.本系统分前台系统和后台系统.前台系统主要负责商城的页面的显示功能,这里采用的面向服务的方式,pc端手机端只负责显示页面,业务逻辑都在 ...

  4. 淘淘商城第111讲——订单系统服务层和表现层工程搭建

    首先我们还是先看一眼淘淘商城的系统架构,如下图所示,可以看到订单系统是一个单独的模块,分服务层和表现层,服务层负责存储订单,表现层负责展示订单. 下面我们便要开始搭建工程了,可以先搭建订单系统的服务层 ...

  5. 淘淘商城第31讲——门户系统的搭建

    通过上文的学习,我相信大家已经实现了商品添加的功能,本文我将来教大家如何搭建门户系统. 什么是门户系统? 从广义上来说,门户系统将各种应用系统.数据资源和互联网资源集成到一个信息管理平台之上,并以统一 ...

  6. 淘淘商城第11讲——如何安装单机版Zookeeper?

    Zookeeper是什么? Zookeeper是Apacahe Hadoop的子项目,是一个树型的目录服务,支持变更推送,适合作为Dubbo服务的注册中心,工业强度较高(稳定性好),可用于生产环境,并 ...

  7. 淘淘商城(前台系统,展示商城首页,商品分类展示)

    1.前台系统和后台系统的关系 2.前台系统的搭建 3.服务端工程的搭建 3.1 创建工程 3.2 使用到的技术 3.3 配置工程 3.3.1 pom.xml 3.3.2 web.xml 3.3.3 框 ...

  8. 淘淘商城第69讲——安装ActiveMQ

    准备工作 新建一台虚拟机 首先,新建一台虚拟机,而且最好设置为固定IP地址,别跟我说你不知道怎么做,要是你真不晓得,那么可以参考我下面的两篇文章. Linux入门第三讲--VMware Worksta ...

  9. 基于JAVA随心淘网管理系统计算机毕业设计源码+数据库+lw文档+系统+部署

    基于JAVA随心淘网管理系统计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA随心淘网管理系统计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...

最新文章

  1. 如何画架构图之C4模型画法
  2. 【Android】Looper消息分发(msg.target.dispatchMessage), Handler消息处理(消息回调/外部回调/自身回调)
  3. jax-ws和jax-rs_JAX-RS和OpenAPI对Hypermedia API的支持:任重而道远
  4. python爬虫记录时间_Python新手写爬虫全过程记录分析
  5. Android开发笔记(一百三十)截图和录屏
  6. ios 替换数组中元素_leetcode169 数组中的主要元素
  7. [导入]七大千年数学难题
  8. 基于视频会议系统的应急指挥项目建设方案
  9. linux用sed替换字符,Linux中使用sed命令替换字符串小结
  10. 一英寸芯片大小_晶圆和芯片的关系_一个芯片有多少晶圆
  11. DNX SDK版本 “dnx-clr-win-x86.1.0.0-beta5”无法安装
  12. win10系统找不到telnet服务器,win10找不到telnet服务怎么办_win10没有telnet服务如何找回...
  13. 阅读笔记--神经网络与深度学习(邱锡鹏)
  14. unsw计算机科学的挂科率,恐怖挂科率创新高!UNSW期中惊现大面积挂科,商科一课程Fail率接近60%,朋友圈一篇哀嚎!...
  15. Python办公——三行代码拆分表格
  16. 滴滴Uber神州易到,共享出行四国军棋沙盘推演
  17. 解决Pytorch转onnx错误:Only tuples, lists and Variables are supported as JIT inputs/outputs!
  18. grad_cam可视化程序搬运
  19. 地图兴趣点搜索三(ES相关性得分参数调整)
  20. 58到家多端消息整合之路

热门文章

  1. rust的矿坑_转: Rust中的Pin详解 【Rust语言中文社区】
  2. Vcenter 7.0 添加主机报错(出现了常规系统错误: Unable to push signed certificate to host 172.17.5.242)...
  3. Linux下非ROOT权限安装MySQL(亲测有效)
  4. 火车轨道铁路轨道检测识别(弯轨+直轨)通用性(Python源码+讲解)
  5. 开个精品水果店前景怎么样,开一家水果店的前景
  6. 【python日用】itertools.permutations用法
  7. HTML中display属性
  8. pytorch+cuda113+cudnn下载
  9. Win10系统电脑前置面板插上耳机没声音怎么办?解决方法
  10. 删除数据库中重复的数据