集羣(cluster)是一組相互獨立的、經過高速網絡互聯的計算機,它們構成了一個組,並以單一系統的模式加以管理。一個客戶與集羣相互做用時,集羣像是一個獨立的服務器。負載均衡(Load Balance),其意思就是分攤到多個操做單元上進行執行html
架構文檔node
學無止境網
該web應用,由兩個服務器一塊兒提供的服務mysql
這裏使用最簡單的輪詢機制,session存放在數據庫,解決了session服務器之間不一樣步的問題。nginx
upstream tianshengjie{ server ip地址; server ip地址 max_fails=2 fail_timeout=10s; } server { listen 80 default_server; server_name 47.99.90.167 www.tianshengjie.cn tianshengjie.cn; location / { proxy_pass http://tianshengjie; proxy_cache_key $http_range$uri$is_args$args; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
forever start -c nodemon app.js --exitcrash
A simple CLI tool for ensuring that a given script runs continuously
守護node進程程序git
使用shell腳本,自動更新代碼,一鍵同步更新web
#!/bin/bash cd git倉庫 git pull; yarn install --production; rsync -av --exclude-from=/opt/ssh/blog_exclude.list git倉庫 代碼發佈地址 rsync -avz -e ssh /var/www/blog/ root@負載均衡服務器ip:負載均衡服務器發佈代碼目錄 cd 代碼發佈地址 ; forever stop app.js; npm run start; echo "發佈成功"
文檔地址
性能最高,有備份有容災,功能強大,可是收費sql
mysql遠程鏈接配置
配置相對簡單,數據庫會有性能瓶頸,免費shell
研究中數據庫
當用戶經過負載均衡,被定位到了不一樣的服務器。這時候,上傳文件時,將會把文件上傳到不一樣的服務器中。當用戶被分配到了其餘服務器時,就會找不到這個文件了。因此咱們須要同步負載均衡的服務器的文件。npm
方案一:本身實現統一文件上傳管理系統,全部用戶文件統一上傳到一個地方。
方案二:使用阿里雲的NAS文件系統管理
方案三:使用NFS系統
阿里雲文件存儲(Network Attached Storage,簡稱 NAS)是面向阿里雲 ECS 實例、HPC 和 Docker 等計算節點的文件存儲服務,提供標準的文件訪問協議,您無需對現有應用作任何修改,便可使用具有無限容量及性能擴展、單一命名空間、多共享、高可靠和高可用等特性的分佈式文件系統。
缺點:收費