使用docker搭建高併發網站架構實踐0--總述
阿新 • • 發佈:2018-11-09
終於有時間可以分享自己之前的學習成果了,之前有幸參與了web網站的專案部署和搭建,特記錄如下。
整體網站架構如下所示:
一、具體架構如下:
二、搭建步驟
1. 搭建nginx + tomcat 負載均衡叢集
2. 配置tomcat 叢集共享 session
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證書部署及域名繫結