1. 程式人生 > >day81_淘淘商城專案_14_專案釋出 + Linux下安裝mysql + tomcat熱部署 + 資料庫分庫分表 + Mycat學習_匠心筆記

day81_淘淘商城專案_14_專案釋出 + Linux下安裝mysql + tomcat熱部署 + 資料庫分庫分表 + Mycat學習_匠心筆記

第十四天:

  • 1、Linux上mysql的安裝
  • 2、系統的部署
  • 3、mycat的介紹
  • 4、專案總結
  • 5、面試中的問題

1、開發流程淺解

2、專案釋出前的準備

1、測試
  a) 本地單元測試
  b) 測試環境測試(1,2,3,4,5)
  c) 使用者測試(模擬環境:UAT環境)
2、確認伺服器的資源
  a) 硬體資源(CPU、記憶體、硬碟)
  b) 軟體資源(Linux、Windows)
  c) 網路資源(寬頻、機房、雲伺服器)
3、相關參與的人員確認
  a) 測試人員
  b) 開發人員
4、資料庫指令碼的準備
  a) 初始化資料的sql指令碼(DBA、運維)
  b) 許可權的sql指令碼等
5、編寫釋出的文件


  a) 開發人員編寫各自負責的功能模組的釋出文件資訊
  b) 測試的文件(測試用例)
  c) 全員參與
6、打包
  a) 專門負責的人員進行打包處理(運維)
7、準備回滾方案

3、專案部署

3.1、Linux下安裝mysql

第一步:檢視mysql是否安裝。

rpm -qa | grep mysql

第二步:如果mysql的版本不是想要的版本。需要把原來的mysql解除安裝。

yum remove mysql mysql-server mysql-libs mysql-common
rm -rf /var
/lib/mysql
rm -f /etc/my.cnf

  使用yum命令,因為yum命令可以自動刪除與mysql相關的依賴;如果使用rpm命令,則還需要手動去刪除和mysql相關的檔案。
第三步:安裝mysql。需要使用yum命令安裝。在安裝mysql之前需要安裝mysql的下載源。需要從oracle的官方網站下載。

1)下載mysql的源包:
我們是centos6.4對應的rpm包為:mysql-community-release-el6-5.noarch.rpm
2)安裝mysql下載源:
yum localinstall mysql-community-release-el6-5
.noarch.rpm
3)線上安裝社群版的mysql
yum install mysql-community-server

  rpm包位置:


第四步:啟動mysql。
service mysqld start

第五步:需要給root使用者設定密碼。

/usr/bin/mysqladmin -u root password 'new-password'  #為root賬號設定密碼

第六步:登入mysql。

[[email protected] temp]# mysql -uroot -pitcast

第七步:需要先登入到mysql,遠端連線授權。

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

  注意:'myuser''mypassword' 需要替換成實際的使用者名稱和密碼。
  mysql安裝好了之後,啟動服務,建立連線,匯入taotao資料庫檔案。
  Linux上安裝mysq連結:xxxxxxxxxxxxxxxxxxx後續補上

3.2、專案架構講解

3.3、系統功能介紹

3.4、網路拓撲圖

3.5、系統部署

3.5.1、部署分析

工程共13個,如下所示,本著高可用的原則,每個工程至少有兩臺伺服器。13個工程至少需要26臺伺服器。
  taotao-manager
  taotao-manager-web
  taotao-content
  taotao-portal-web
  taotao-search
  taotao-search-web
  taotao-item-web
  taotao-sso
  taotao-sso-web
  taotao-order
  taotao-order-web
  taotao-cart
  taotao-cart-web
  即淘淘商城在真實環境中要部署的話需要26臺伺服器。

服務 伺服器個數
Mysql 2
Solr 7
Redis 6
圖片伺服器 2
Nginx 2
註冊中心 3
Activemq 2

  總共需要26+24=50臺伺服器。但我們都知道,一般的小公司是絕不可能弄這麼多伺服器的,太昂貴了,比較可行的是採用偽分散式

3.5.2、伺服器規劃

如下圖所示,搭建服務原來需要24臺伺服器,現在只需要7臺即可。


搭建工程規劃使用 5臺伺服器便可,如下圖所示:

  這樣規劃的話,我們只需要7+5= 12臺伺服器即可。當然了, 12臺伺服器在一般的公司來說,也是達不到的,那麼我們便可以進一步 壓縮把更多的服務合併到一臺伺服器上,把更多的工程合併到一臺伺服器上
  我們 將服務精簡成一臺伺服器192.168.25.133
記憶體至少給2G以上。

3.5.3、工程規劃

工程規劃表:


tomcat埠更新對映表:

3.5.4、域名規劃

域名規劃表:

3.5.5、tomcat熱部署

  可以使用maven實現tomcat熱部署。即tomcat啟動時部署工程
  tomcat有個後臺管理功能,可以實現工程熱部署。部署完成後,我們不需要啟動tomcat了,tomcat會自動把war包解壓到ROOT目錄下。


這裡以taotao-content及taotao-portal-web為例子演示:
  在Linux下,我們新建有13個tomcat放置12工程:


  先啟動服務:啟動redis,啟動zookeeper,啟動activemq,啟動solr,啟動mysql。
配置方法:
  先部署服務層工程,再部署表現層工程。

a) 部署taotao-content
linux系統上的配置:
第一步:需要修改linux系統中對應的tomcat9002的conf/tomcat-users.xml配置檔案。新增使用者名稱、密碼、許可權。

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

  我們要將war包放在對應的tomcat9002中的webapps目錄下的ROOT目錄下,所以我們先在webapps目錄下建立ROOT目錄:

[[email protected] webapps]# mkdir ROOT

第二步:重新啟動對應的tomcat9002。

[[email protected] ~]# pwd
/usr/local/taotao-projects/tomcat9002/bin
[[email protected] bin]# ./startup.sh

第三步:檢視tomcat9002的啟動日誌。

[[email protected] tomcat9002]# tail -f logs/catalina.out

開發機器上(windows系統)的配置:
第一步:修改配置檔案。
  修改taotao-content工程中的相應的配置檔案db.properties中資料庫的ip地址、埠、例項名、使用者名稱、密碼。修改applicationContenxt-redis.xml中的ip地址、埠。(即:將原來的localhost修改為mysql所在的伺服器的IP地址。)修改taotao-content工程中的釋出服務的配置檔案applicationContenxt-service.xml中註冊中心的地址,改成linux系統中的zookeeper的地址192.168.25.133以及暴露服務的埠。
第二步:配置tomcat外掛,需要修改taotao-content工程的pom.xml檔案。

    <build>
        <plugins>
            <!-- 配置Tomcat外掛 -->
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <configuration>
                    <port>8083</port>
                    <path>/</path>
                    <url>http://192.168.25.133:9002/manager/text</url>
                    <username>tomcat</username>
                    <password>tomcat</password>
                </configuration>        
            </plugin>
        </plugins>
    </build>

  注意:添加了三行配置,<url>裡面的tomcat熱部署地址的埠號有所變化,現在是9002。大家可能會有疑問,<url>配置上面的那個<port>8083</port>有什麼用?會不會對部署產生壞的影響。這個其實不用擔心,這個port對熱部署來說,沒有用,這裡之所以沒有把它刪掉是因為我們在Windows系統下開發的時候給這個工程規劃的埠是8083,如果需要在Windows系統下啟動該工程的話,這個port就是有用的,因此這個<port>8083</port>配置我們不必理會,擱那兒就行。
第三步:使用maven命令進行部署。
  選中taotao-content工程,右鍵 --> Run As --> Maven build…

tomcat7:deploy      #部署
tomcat7:redeploy    #重新部署

  部署的路徑是“/”會把系統部署到webapps/ROOT目錄下
  部署工程跳過測試

clean tomcat7:redeploy -DskipTests

第四步:在Linux下檢視toamcat9002的日誌

[[email protected] tomcat9002]# tail -f logs/catalina.out

日誌輸出內容如下圖所示:


   注意:每次 部署完服務後,都會停在如上圖所示的位置上,需要我們 重新啟動tomcat9002。暫時不知道為什麼。
第五步:重新啟動tomcat9002。
第六步:檢視dubbo監控中心。
  部署完服務層工程taotao-content後,我們到 dubbo服務治理--> 服務頁面,發現多了兩個服務,分別是com.taotao.content.service.ContentCategoryService和com.taotao.content.service.ContentService。說明我們的taotao-content工程部署成功。

b) 部署taotao-portal-web
  注意:首先要確保新的伺服器192.168.25.133上安裝的jdk是否與Eclipse開發時所用的jdk版本一致,我Eclipse開發時用的jdk1.7,因此伺服器上的安裝的jdk版本也要是1.7才行。不然會出現問題!!!(是個坑)
  Linux上安裝jdk過程連結:https://www.cnblogs.com/chenmingjun/p/9931593.html
linux系統上的配置:
第一步:需要修改linux系統中對應的tomcat9003的conf/tomcat-users.xml配置檔案。新增使用者名稱、密碼、許可權。

<
            
           

相關推薦

day81_商城專案_14_專案釋出 + Linux安裝mysql + tomcat部署 + 資料庫分庫 + Mycat學習_匠心筆記

第十四天: 1、Linux上mysql的安裝 2、系統的部署 3、mycat的介紹 4、專案總結 5、面試中的問題 1、開發流程淺解 2、專案釋出前的準備 1、測試  a) 本地單元測試  b) 測試環境測試(1,2,3,4,5)  c) 使用

day81_商城專案_14_專案釋出 + Linux安裝mysql + tomcat部署 + 反向代理的配置 + 資料庫分庫 + Mycat學習_匠心筆記

淘淘商城專案_14 1、開發流程淺解 2、專案釋出前的準備 3、專案部署 3.1、Linux下安裝mysql 3.2、專案架構講解 3.3、系統功能介紹 3.4、網路拓撲圖 3.5

在離線Linux安裝JDK Tomcat部署專案

1 準備工作     Xshell 6,tomcat,jdk,nginx-1.15.2.tar.gz,openssl-1.1.0h.tar.gz,pcre-8.42.tar.gz,zlib-1.2.11.tar.gz 2 部署後臺專案---安裝JDK 2.1.查詢需要解

day69_商城專案_02_dubbo介紹 + dubbo框架整合 + zookeeper + 商品列表查詢實現 + 頁 + 逆向工程_匠心筆記

淘淘商城專案_02 1、功能分析 1.1、後臺系統所用的技術 1.2、建立資料庫 1.3、Mybatis逆向工程 1.4、系統間通訊問題 1.4.1、分析

寶TDDL資料庫分庫

1. 分庫分表,而且分庫規則非常靈活. 2. 主鍵生成策略  目前TDDL提供的id生成主要還是依託資料庫來進行的,oracle可以直接使用sequence來完成id生成,mysql則需要DBA建立一個表專門用於生成id. 3. 連線查詢策略 雖然TDDL目前並不直接

day74_商城專案_07_solrcloud搭建 + zookeeper叢集搭建 + 搜尋功能切換到叢集版 + httpclient學習 + 全域性異常處理器 + 附錄_匠心筆記

課程計劃 1、solr叢集的搭建 2、使用solrJ管理solr叢集 3、把搜尋功能切換到solr叢集版 4、httpclient 5、全域性異常處理 1、什麼是SolrCloud   SolrCloud(solr 雲)是Solr提供的分散式搜尋

商城專案_同步索引庫問題分析 + ActiveMQ介紹/安裝/使用 + ActiveMQ整合spring + 使用ActiveMQ實現新增商品後同步索引庫_匠心筆記

文章目錄 1、同步索引庫問題分析 2、ActiveM的介紹 2.1、什麼是ActiveMQ 2.2、ActiveMQ的訊息形式 3、ActiveMQ的安裝 3.1、安裝環境 3.2、安裝步驟

day79_商城專案_12_購物車流程 + 商城購物車系統的搭建 + 商城購物車系統的實現分析 + 購物車實現增刪改查_匠心筆記

課程計劃 1、購物車的流程 2、購物車的實現 a) 登入狀態下的購物車實現 b) 未登入狀態下的購物車實現 1、購物車流程 1.1、以前的購物車流程 使用者將商品新增到購物車時,判斷使用者是否登入,如果已經登入將購物車放入se

day82_商城_15_專案的總結 + 專案中的問題_匠心筆記

專案的總結 第一天: 學習電商行業的背景,電商模式:B2B、B2C、B2B2C、O2O。分散式,叢集的理解,系統的架構,基於SSO的架構。使用Maven搭建後臺工程,及SVN的使用。 第二天: dubbo的學習和使用,系統和系統之間通訊的中介軟體。webservice :系統之間通訊。應

day73_商城專案_06_solr索引庫搭建 + solr搜尋功能實現 + 圖片顯示等問題解決_匠心筆記

課程計劃 第六天: 1、搜尋工程的搭建 2、linux下solr服務的搭建 3、測試使用solrJ管理索引庫 4、把商品資料匯入到索引庫中(後臺功能) 5、商品搜尋功能實現(前臺功能) 1、搜尋工程的搭建 要實現搜尋功能,需要搭建solr服務、搜尋服務工程、搜尋系統(表

day82_商城專案_15_專案總結 + 專案中的問題_匠心筆記

專案總結 第一天 1、電商行業的背景,b2b、b2c、b2b2c、c2c、o2o2。 2、系統的架構。基於SOA的架構。 3、工程搭建。使用maven管理工程。 4、svn的使用。 第二天 1、ssm框架整合。 2、使用dubbo進行通訊   1)服務提供者   2)服務消費者

day80_商城專案_13_訂單系統搭建 + 展示訂單確認頁面 + 使用者身份認證(SpringMVC攔截器) + 實現提交訂單功能_匠心筆記

淘淘商城專案_13 1、訂單系統搭建 1.1、功能分析 1.2、工程搭建 1.2.1、建立訂單服務層工程 1.2.2、建立訂單表現層工程 2、展示訂單確認頁面

day79_商城專案_12_購物車流程 + 商城購物車系統的搭建 + 商城購物車系統的實現分析(cookie+redis方案) + 購物車實現增刪改查_匠心筆記

淘淘商城專案_12 1、購物車流程 1.1、以前的購物車流程 1.2、現在的購物車流程 2、商城購物車系統的搭建 2.1、購物車系統的架構 2.2、服務層工程搭建

day78_商城專案_11_實現SSO系統的登入註冊功能 + 門戶首頁展示使用者名稱 + ajax請求跨域問題詳解_匠心筆記

淘淘商城專案_11 1、服務介面實現 1.1、檢查資料是否可用介面開發 1.1.1、功能分析 1.1.2、Dao 1.1.3、Service 1.1.4、釋出服務

day77_商城專案_10_ Linux的Nginx代理詳解(配置虛擬主機+實現反向代理+實現負載均衡+高可用) + 單點登入系統工程搭建 + SSO系統介面文件講解_匠心筆記

淘淘商城專案_10 1、目前訪問系統使用的方式存在的問題 2、什麼是nginx 3、nginx的應用場景 4、nginx的安裝 4.1、要求的安裝環境 4.2、安裝步驟 4.3、啟動nginx

day76_商城專案_09_商品詳情頁動態展示實現(jsp+redis) + FreeMarker模板引擎入門 + 商品詳情頁靜態化實現(Win版本的nginx作http伺服器)_匠心筆記

淘淘商城專案_09 1、商品詳情頁面展示,動態展示(jsp + redis) 1.1、工程搭建 1.1.1、pom檔案 1.1.2、框架整合 1.1.3、springmvc.xml

day75_商城專案_08_同步索引庫問題分析 + ActiveMQ介紹/安裝/使用 + ActiveMQ整合spring + 使用ActiveMQ實現新增商品後同步索引庫_匠心筆記

淘淘商城專案_08 1、同步索引庫問題分析 2、ActiveM的介紹 2.1、什麼是ActiveMQ 2.2、ActiveMQ的訊息形式 3、ActiveMQ的安裝 3.1、安裝環

day74_商城專案_07_ zookeeper叢集搭建 + solrcloud叢集搭建 + 搜尋功能切換到叢集版 + httpclient學習 + 全域性異常處理器 + 附錄_匠心筆記

淘淘商城專案_07 1、什麼是SolrCloud 2、Solr叢集的系統架構 2.1、SolrCloud的物理結構 2.2、SolrCloud的邏輯結構 2.2.1、Collection

day73_商城專案_06_搜尋工程的搭建 + linuxsolr索引庫的搭建 + 把商品資料匯入到索引庫中(後臺) + 商品搜尋功能實現(前臺) + 圖片顯示等問題解決_匠心筆記

淘淘商城專案_06 1、搜尋工程的搭建 1.1、Solr服務搭建 1.1.1、solr的環境 1.1.2、solr的搭建步驟 1.1.3、solr的使用 1.2、配置

day72_商城專案_05_首頁輪播圖顯示實現 + redis的安裝及使用 + redis叢集環境搭建 + redis實現快取 + 快取同步_匠心筆記

淘淘商城專案_05 1、首頁輪播圖的展示 1.1、功能分析 1.2、Dao層 1.3、Service層 1.3.1、釋出服務 1.4、表現層 1.