博卡軟體于2004年在上海成立,是一家專注于為本地美麗生活相關行業提供軟體服務的SaaS軟體提供商,主要産品提供門店營運所需要的管理軟體,智能硬體以及營銷小程式等。
随着公司業務的增長,博卡面臨新的需求:
需求一:博卡服務衆多小商戶,客戶需求高并發時必須每天傳遞數次。傳統的開發部署模式成為瓶頸, 必須打造高效的CI/CD系統。
需求二:沒有專職運維人員,不同開發需要對應流水線操作的權限管理。
需求三:IT架構複雜,數十個微服務和數十個前端應用,需要實作零停機的無縫遷移。
需求四:Kubernetes學習門檻過高,如何通過更簡單的管理成本獲得自動化擴縮容、自動運維。
SaaS公司要在競争中拔得頭籌,就需要快速影響客戶需求,同時保持較高的穩定性。同時要快速占領市場,就需要不斷推出新産品不斷創新,這個時候開發的傳遞效率以及低成本試錯就尤為重要。博卡将其SaaS應用完全部署在阿裡雲上,最終選用阿裡雲容器服務ACK+雲效解決方案,替代了最初ECS+Gitlab+Jenkins,打造其完整高效的CI/CD系統落地DevOps。

1、高效落地DevOps
• 從開發、預發到生産全周期覆寫。雲效的代碼管理Codeup的内置評審功能,能高效的完成Code Review。内置的代碼檢測開箱即用,促進編碼規範執行。
• 雲效Flow流水線便捷實作持續傳遞,内置多種語言的流水線模闆,與容器服務ACK關聯,開箱即用。
2、零停機任意復原
• 通過雲效的Flow流水線可以復原基本上所有部署方式,阿裡雲ACK+Flow的最佳搭檔,則可以實作快速零停機復原任意版本(通過健康監測以及重新開機政策確定啟動的容器必然是可運作版本,如果出現無法啟動或者啟動異常的版本,則因為就緒監測無法通過是無法接收流量的,是以可以完成零停機或復原)。
• 同時,因為ACK是基于Docker鏡像的更新,復原版本不會環境變化等因素導緻復原失敗。
3、降本增效
• 容器服務ACK根據每個Pod的CPU和記憶體資源需求自行排程,資源極緻利用。
• 節省了微服務自行部署中的高可用成本, 且節省手動配置等負擔。
4、應用護航,無懼故障與高峰
• 故障自動重新開機:通過Pod健康監測和就緒監測,與應用健康監測接口(比如SpringBoot的Actuator的health)即可簡單實作故障自動重新開機,解決了小公司沒有24*7快速響應運維人員的問題,可以做到自動化最高效的緩解問題。
• 自動擴容:對于某些應用瞬間突發流量、大量計算資源的需求,ACK可以根據此前配置規則自動擴容,確定應用的穩定性。