騰訊云數據庫產品矩陣

什么是節前黃金14天?這段時間,企業客戶的運營團隊需要做哪些準備?對此,騰訊云有哪些建議?

胥彪:大多數團隊會提前2個月開始準備一次大型活動。但根據我們經驗,節前14天是團隊做最后梳理的關鍵時間。在最后14天,公司的活動內容基本定型,同時,競品情況、渠道、供應商情況、內部準備、以及預熱效果都已經清晰。此時的效果預估基本準確,活動開發和IT設施可以做到提前準備到位。

根據騰訊多年經驗,在最后這14天,有了效果、準備情況和成本綜合評估,更加容易精準的找到業務關鍵瓶頸的地方。而對大多數業務來講,數據庫是比較容易成為瓶頸的點。因此需要我們提前準備。

準備過程中,有哪些關鍵點?進行這些測試時,有哪些注意事項?

胥彪:在最后14天,團隊應該再次做好業務系統壓測,并聯合開發團隊分析問題并解決。譬如,在壓測過程中,建議高于預估值20%~100%的量進行壓測,以判斷數據庫在峰值時的承載能力。

一般來說,通過完善的測試,業務系統會暴露一些問題。此時,企業還有時間,設計一些快速簡單的優化策略,并做好災難時的故障預案和演練,以保障順利的完成既定目標。

上述準備工作中,最容易出現的問題有哪些?

胥彪:為什么說數據庫比較容易成為瓶頸,我們團隊專家業務架構師祝海強做過專門的分享:

最后準備階段,數據庫通常會發現這幾個問題:

最后,還需要考慮到,故障無法避免的情況下,如何減少損失。

春節活動期間瞬時訪問峰值過大是常事兒,騰訊云建議如何應對措施?

祝海強:春節活動前,一般我們需要配合業務做壓力預估,以及對應的壓力測試,數據庫層以MySQL為例,可以使用tcpdump、pt-digest-query的獲取SQL訪問情況(例如top10,讀寫比等),根據不同的壓力場景制定不同的優化方案,一般分架構優化、SQL優化、內核參數優化、配置升級、過載保護、異地災備等:

架構優化之緩存使用:在數據庫前端增加或擴容讀寫Cache層(如redis),將訪問請求緩存下來,組件讀寫,當然普通架構下的業務,通常1天可以完成cache。例如,QQ就通過了cache,有效的解決了在春節零點,全國大量用戶修改說說、群發祝福消息等業務場景的業務瓶頸;

架構優化之讀寫分離:對于一些及時性要求不高的讀邏輯、離線邏輯、報表等服務,可以嘗試使用只讀實例來降低主庫的壓力。例如,騰訊新聞一主多從,通過6個只讀實例來擴展讀,保證在重大新聞時,騰訊新聞仍然能正常運行;

SQL優化相關:根據壓測期間抓包分析出的top10SQL及對應的慢查詢,去做相關的索引優化、表結構調整、子查詢優化、隱式轉換、分頁優化等操作;

內核參數相關:壓測期間可以做一些MySQL性能參數的調優,例如調整線程池、內存、刷盤、open?table等相關參數,來提高實例的整體吞吐量;

配置升級相關:如果我們上面的工作都做了,系統壓力還是扛不住,我們要做相關的擴容計劃,來滿足預估的業務訪問量;

過載保護相關:當然春節期間真實訪問量會超過我們前期評估的訪問量,我們還需要有相應過載保護的方案;與業務方一起制定過載保護措施:增加數據庫敏感指標監控,及時發現異常,譬如:監控活動連接數超過CPU核心數告警,及時排查原因,并通過程序啟動提前預埋過載保護策略;

過載保護策略可能需要業務方一起參與:例如在連接失敗或超時情況下會有相應提示或引導新用戶到其他流程中,減少用戶重復請求次數。在異常情況出現時,采取減少請求數,異步限流降低拆、分享請求速率等措施減輕數據庫端壓力。例如QQ紅包,能力業務峰值較大時,就會引導用戶休息一會兒,或加入其它策略;

異地災備:我們前面的工作做完,基本就能撐住業務的壓力了,但是考慮到活動期間系統的容災能力,這里也建議企業根據自身的業務特點來考慮是否需要異地災備的方案。

擴容數據庫。怎么快速擴容?擴容時需要注意哪些問題?

祝海強:擴容的目的是解決可能的數據庫性能和容量瓶頸。擴容時需要注意以下幾點:

合理設置讀策略,讓備機承擔讀請求比例(并設置更靈活的讀策略,確保在數據一致性和性能之間的均衡)。

如果故障無法避免,有沒有備選方案將損失降到最低?

祝海強:如果故障無法避免。我們應該從兩個角度確保業務快速恢復,降低損失:

一是從技術策略上,需要平衡系統性能和數據安全;例如某些涉及交易的核心數據庫故障后,數據庫需要花大量時間核對數據方能重新恢復數據庫,那么如果啟用了數據強一致的方案,就可以很容易恢復業務。

二是從管理策略上,讓故障恢復流程爛熟于心,每個步驟對應責任人,銜接順利,并且做好嚴格的管控,避免越忙越亂導致誤操作。

如何從容應對每一次挑戰,騰訊云有沒有結合自身實踐經驗的分享?

根據業務的使用場景,如果業務的數據庫在云上,可以借用云上數據庫彈性擴容縮容的特點,將活動期間數據庫的規格升級到大規格,活動結束后,再縮容回來降低成本,這樣可以讓用戶的整體成本實現良性循環。

與其他公司的同類品相比,騰訊云數據庫的優勢在哪?

祝海強:首先是穩定性,我們對外提供的數據庫達到99.95%的高可用性,這個是得到過工信部可信云認證的,目前已經有大量的企業運行在騰訊云上。另外通過大量的軟硬件優化,在同等配置下,我們的性能只高不低。而且我們支持基于MySQL、PostgreSQL、SQLServer等多種引擎數據庫,可以為不同業務提供不同的產品。最后,在春節期間,騰訊云將一如既往的提供7*24h人工值守服務,協助云上的每個用戶順利過好春節。

數據庫行業,還有哪些難以防范的攻擊,騰訊云有哪些心得?

祝海強:安全是云數據庫的重中之重,我們內部對安全的要求,一直擺在最優先的位置。目前對于數據的攻擊層出不窮,有些容易預防,有些則難以察覺。

而對于數據庫本身來講,我們的建議是,對整個業務系統和數據庫,都要做到6個維度進行數據安全保護:攻擊者進不去,非授權者信息拿不到,竊取保密信息看不懂,系統和信息篡改不了,系統工作癱不了。

攻擊者進不去:至少需要從網絡層杜絕攻擊者接觸到數據庫;例如,應該避免通過互聯網訪問管理數據庫,避免未經授權內網設備訪問數據庫;如果值班同事需要在家運維,也應選擇通過VPN訪問數據庫;條件差點兒至少應該采用復雜密碼,使用不常見端口,且僅在必要的時間開放互聯網訪問數據庫。

非授權者信息拿不到:例如,梳理每一個數據庫帳號權限,最小粒度授權,避免多人多系統共用一套帳號;高權限帳號必須和物理設備綁定;移出非必要工具,及時升級數據庫,并在數據庫前端部署必要的安全設備。

竊取保密信息看不懂:我們需要讓核心數據庫加密,或讓核心字段加密存儲,加密也建議采用雙重加密:例如用戶密碼字段等;另外,加密密鑰需存儲在更安全位置。

系統和信息篡改不了:例如,部署數據庫防火墻,數據庫安全審計系統都是放篡改的手段;如果節前來不及,先利用SQL注入漏洞掃描對系統做全面的檢查,保證接口透傳SQL時將特殊字符做轉義,避免透過SQL注入篡改數據。

系統工作癱不了:從網絡和業務方面,接入防DDOS攻擊系統或接入CDN是減少業務癱瘓的有效辦法。

這里的安全命題非常大,不僅僅部署幾臺防火墻,做些技術準備就好;更需要每個企業從管理制度到技術方案都要嚴格要求。而騰訊把這些安全相關的經驗沉淀下來,并將整體安全解決方案開放到了騰訊云給企業來使用,包括防DDoS,放SQL注入,提供數據庫安全審計安全特性,也歡迎大家節后使用。

如何在數據庫順利部署海量服務?

胥彪:互聯網領域,應對海量服務方案很多,比較成熟和具有性價比的方案是采用分布式數據庫。

例如,騰訊云兼容MySQL協議的分布式數據庫TDSQL,支撐了騰訊云90%的計費業務,兼容PostgreSQL協議的分布式數據庫PostgreSQL-XZ,支撐微信支付的核心模塊。而正是通過內部海量業務和多年積累,騰訊云分布式數據庫也在業內具有良好的口碑。

未經允許不得轉載:存儲在線-存儲專業媒體 » 數據庫部署春節黃金14天:騰訊云有何妙招?
分享到

songjy

相關推薦

精品国产午夜肉伦伦影院,双性老师灌满浓jing上课h,天天做天天爱夜夜爽,攵女乱h边做边走