在業務高速發展的時候,後端的壓力慢慢變大,伺服器擴容在所難免。今天就聊聊擴容相關的問題。
首先我們看資料庫的擴容,到底是加例項還是直接公升配?
在創業初期,基本上都是單庫的形式。比如最開始是4c8g的配置,到了某天資料庫扛不住了,但是資料量其實沒那麼大,只是請求量上來了而已,或者由於研發寫了很多複雜的sql導致資料庫效能下降了。
這個時候最快的解決方式就是擴容了,首先我們來看加例項的方式,比如我們可以加n個從節點來提高查詢的效能,可以對庫進行垂直拆分或者水平拆分。
以上這些都是提高效能的方式,但是都有乙個問題就是得改**,還得測試,時間成本較高。
資料庫公升配指的是直接公升級硬體層面的配置,比如4c8g公升級到8c32g,效能直接大幅度提公升。好處是應用**都不用做任何改變,資料庫層面直接公升級即可。
當然也有需要注意的地方,如果你們是自建資料庫的話,得進行資料遷移之類的操作。如果**中的ip鏈結資料庫的話得看ip會不會變,如果會變還是得改配置,重啟應用程式。
如果用的雲服務,一般都是用網域名稱進行連線資料庫,公升配後連線斷開也能重連。資料也不用我們操心,只需要在控制台點點按鈕即可完成公升配,就是有點費錢而已。
雲服務公升配特別需要注意的是一定要選擇凌晨進行公升配,在白天公升配會有一定的影響。我們之前在白天公升配過一次,公升配失敗,導致資料庫無法響應。
伺服器加例項相對於資料庫來講會更簡單,我們的後端服務都是無狀態的,擴容也只需要有新的伺服器,裝個環境就可以直接部署了。如果用了docker之類的容器就更方便了。
資料庫加例項程式還得調整,後端服務加例項,不用改動**。如果是服務層本身就用註冊發現的機制,如果是web層,也只需要修改nginx的配置即可。
所以建議大家在伺服器需要擴容的時候盡量直接加機器,不用了也可以撤掉。
如果剛開始你的機器配置很低,比如2c4g這種,我建議你先公升配。至少也得搞個4c8g的配置,不然效能太差了。
機器公升配跟資料庫一樣,如果是自建的還好,直接將應用部署到新機器即可。如果是雲服務,那麼還是得選擇凌晨進行公升配,不能影響業務。
創業初期,資料庫盡量先公升配,節約開發時間。資料量大了後在拆分多節點。
伺服器配置低先公升配,保證所有相同業務的部署機器一樣的配置。如果配置不是很低,那麼選擇擴容節點,對業務沒有任何影響,前提是服務需要無狀態。
我的伺服器之旅
雲伺服器配置 cpu 2核 記憶體1.5g 資料盤100g 頻寬2m。雖然配置不高,但適合我練練手。開始管理雲伺服器乙個星期了,從開始遠端連線伺服器到安裝各種應用,能感受到每天都在進步 很有成就感。centos 6.3 64位作業系統 mysql資料庫 nginx php vsftp 使用vim c...
我的linux伺服器配置
1.screen 神器的安裝 yun install sceen 2.git的安裝,yum install git 3.桌面系統支援 yum groupinstall x window system desktop platform desktop 4.編輯工具code block安裝 安裝gcc ...
伺服器cpu型號解讀 我自用的伺服器,有的要不
咱這面不是前段時間賣伺服器麼,賣出去一波。應該是10月15號往後的30天,我完全就把cfd的東西給扔了,我勒個去,事太多,後來叫停了。叫停之後,我又開始回歸cfd了,繼續演算法,繼續程式設計,爽的很。但是,我勒個去,之前一筆一筆3萬多的進賬,停了之後沒錢進來了。虛的很啊!吃慣了4600的早餐,再吃4...