1. 程式人生 > >使用docker搭建高併發網站架構實踐0--總述

使用docker搭建高併發網站架構實踐0--總述

終於有時間可以分享自己之前的學習成果了,之前有幸參與了web網站的專案部署和搭建,特記錄如下。

整體網站架構如下所示:

  一、具體架構如下:

         

    二、搭建步驟

      1. 搭建nginx + tomcat 負載均衡叢集
        2. 配置tomcat 叢集共享 session

nfs
        3. nginx
tomcat動靜分離方案研究,部署
        4. 搭建 KeepAlived  熱備份 nginx
        5. 
搭建mysql一主多從,並在程式碼層面支援該方案
        6. 
快取體系(資料庫快取,介面快取,頁面快取)

      說明整體網站設計歸歡哥所有,我萬分感激歡哥教我學程式設計,給我機會鍛鍊和提高自己。該設計主要用於支援普通web專案的高併發需求,這是最原始的設計,我現在測試叢集上實現了搭建,測試階段使用VM作為虛擬伺服器,作業系統使用centos7.0,所有服務均是使用docker容器技術來實現,一部分直接使用docker hub基礎映象,一部分自己製作的特有映象。目前該專案已經部署,不過後來真實環境使用微軟雲,網站架構也發生了部分變化。

      現在看來,對於大型網站來說,主流的還是RPC,SOA以及微服務這種部署方式,就網站架構來說,一般使用分散式,就容器虛擬化來說,一般不直接裸用docker容器,而是使用k8s等容器編排引擎來管理容器。後面也會分享自己對於k8s的學習心得。

具體來說,主要由以下組成:

1.Docker簡介以及私有倉庫搭建

2.Docker實現Nginx和Tomcat負載均衡

3.Docker實現web叢集共享session  Ngnix+Tomcat+Redis/Spring-session+redis

4.NFS檔案共享搭建

5.Docker實現Nginx+tomcat動靜分離

6.Keepalived+Nginx實現熱備份

7.Mysql主從同步+讀寫分離+讀負載均衡

8.Docker+Solr搜尋使用

9.Tomcat證書部署及域名繫結