洋蔥學院在2013年末成立,原名洋蔥數學,是一家K12在線教育公司。課程裡沒有真人老師授課,而是採用100%人機交互學習方式,每節課5-8分鐘動畫視頻的形式精講一個知識點或解題思維,希望有趣生動的講解方式讓更多的孩子們愛上學習。
創新且銳意進取,是這個公司的基因。
洋蔥學院由楊臨風、朱若辰和李諾聯合創辦,團隊希望通過技術方式促進教育均衡。在創立之初,團隊就做出了一個意識超前的決定:整套業務系統均基於阿里雲搭建。
要知道,2013年,能選擇全面上雲的中國企業屈指可數。
上雲先鋒洋蔥學院這一路走來,也是和阿里雲一同攜手成長的難忘歷程。幾年前,由於某個特殊使用場景,線上業務受到嚴重影響,洋蔥學院和阿里雲緊急溝通、快速排查問題,阿里云云數據庫的專家同學進行了重啟、備份等一系列工作。
早先,洋蔥學院起步於初中數學、物理課程,但是隨著不斷髮展,開始加入語文和英語等學科,這些課程特點不同、相應的學習流程不同。除了早先選用的ECS雲服務、SLB負載均衡、阿里云云數據庫等經典基礎產品之外,洋蔥學院也嘗試將新的業務應用搭建於一些新興阿里雲產品,如ACK容器服務、RSS彈性伸縮、SLS日誌服務、Blink實時計算、ARMS前端監控等,來滿足日趨複雜和多樣化的業務需求。
如今,從初中理科逐漸擴展到小初高全學段全學科,為130多萬教師以及3600多萬的中小學生提供24小時在線的“雲課堂”。
疫情大考突如其來,IT架構穩如泰山
疫情期間(近一個月以來),有超過700萬學生、35萬教師使用洋蔥學院APP在線學習或輔助授課,同時還將課程資源開放給學習強國、快手等第三方平臺播放,幫助更廣泛的學生遠程學習。
能應對猝不及防的疫情流量洪峰,洋蔥都做了怎樣的努力、下足了哪些功夫呢?
在線教育業務的一個重要特點,就是波峰波谷比較規律,可預測。在學校下課或放假時期,業務會達到上升,洋蔥學院便會在數分鐘擴容雲上資源,待學生返校上課之時,再根據業務情況釋放資源,這樣持續保持較高的資源利用率,既節省成本又確保業務響應。
3年前,洋蔥學院開始嘗試微服務改造,將複雜的單體架構進行拆分和解耦。同時採用容器技術,並也將swarm遷移至阿里雲容器服務ACK之上,原本每個模塊都對應一套ECS與SLB,但是隨著微服務越拆越細,開始出現資源浪費的情況,而且調度複雜度都在迅速膨脹。容器服務可以根據不同模塊的配置所需,資源分配更加合理,按照定義規則自動彈性伸縮避免了複雜的調度維護。
容器的彈性
基本功夯實的基礎上,洋蔥學院還做了一些方案優化和升級。
延期開學的這段時間裡,廣大學生學習時間較為集中,面對大流量、高併發訪問需求,洋蔥學院需要確保業務穩定性,採用阿里雲容器服務與雲數據庫融合解決方案,在應用不變的情況下,快速平穩實現擴容的問題。阿里雲容器服務可以在幾分鐘內擴充底層資源,滿足快速部署數千個應用實例的需求。阿里雲容器服務團隊的建議下,洋蔥學院還進一步優化了整體的ECS服務器配置,將大量的小規格ECS服務器更換成30至50核大規格ECS,從容應對10倍擴容,同時運維管控更加便捷。
針對疫情延期開學,洋蔥學院作為頭部K12在線教育公司,免費向全國師生開放了平臺的全部核心課程資源,這期間每天的學習訪問人數持續飆升。使用雲容器之後,系統在資源利用率上提升了約60%,出現問題後可快速隔離,當面對急劇增長的業務量,也可以在短時間內擴容進行業務支撐。 ——李諾 洋蔥學院聯合創始人&CTO
數據庫的升級
為了確保平臺使用起來“絲般順滑”,阿里云為洋蔥學院提供了綜合架構解決方案:數據庫層將雲數據庫Redis數據庫做高速緩存,RDS PostgreSQL+MongoDB做持久化存儲;應用層對微服務進行改造,以及容器化部署。這是完成挑戰的核心能力。
洋蔥學院還對冷用戶和冷熱數據做了優化:冷用戶,即第一次來的用戶信息較少,此期間冷用戶過多,亟需優化冷用戶的流程處理,這需要提高高壓下的數據快速處理能力,處理變得更快;老師和學生的作業數據,會有冷熱數據之分,每隔一段時間進行數據遷移,但是熱數據增長過快,此前方案逐漸應接不暇。在阿里云云數據專家的建議下,將冷用戶緩存增加,升級數據庫,對數據庫進行了分庫分表,還進行了一系列索引優化、語句改寫以及業務改造等工作。
在此次疫情中,洋蔥學院利用阿里雲數據庫的極致彈性、無縫升級擴容能力,一晚上便完成了幾十個核心數據庫的容量升級以及PG實例版本升級。單個雲Redis集群可承載千萬級訪問的超高性能,確保了即使流量數十倍增長也不會有業務瓶頸。同時,持久化存儲RDS PostgreSQL、MongoDB有更強的承載能力,不僅可以應對複雜查詢,還可做到極致超強彈性水平擴展,全面保障了洋蔥學院的運行,在業務量比歷史同期翻了10倍的情況下仍然保持平穩。
故障檢測
此外,原本只能依靠負載均衡的定時掃描錯誤節點,故障檢測存在一定時延;而Kubernetes自帶容災和錯誤發現機制,容器內部pod之間自動實現切換,大大縮短問題發現時間,同時基於阿里云云監控、ARMS Prometheus、ARMS前端監控和日誌服務,實現雲資源、容器集群、容器節點、Pod等指標的完善監控,對集群變更狀態、pod創建拉起刪除、組件異常等信息,基本可以覆蓋到各種監控報警問題,將重大故障‘扼殺於搖籃之中’。
AI輔助教學,學生老師個性化“Friday”
看過復仇者聯盟的朋友們,都記得鋼鐵俠的AI助手Friday,每次關鍵時刻都協助鋼鐵俠力挽狂瀾。
洋蔥學院的APP,其實早已經成為很多學生和老師的AI助手Friday。2017年,洋蔥學院成立人工智能實驗室,並嘗試將AI賦能引入其教學體系。最主要的原因,是希望為學生們打造完整的學習閉環,產品能根據學生的學習現狀和效果,動態規劃學習路徑,推送個性化學習內容。
而老師則可以通過數據後臺實時充分掌握班上每名學生的學習能力和知識掌握情況,為同班同學一鍵佈置不同的教學任務。
用心做產品,以誠待客
洋蔥學院自成立之處,便決心搭建於雲上。在他們看來,自己研究開源方案或重新搭建系統,是"事倍功半"的,意味著巨大的運維負擔;因此,每當有新的業務需求時,洋蔥學院都會首先考慮能否使用雲上已有方案,他們相信阿里雲服務的穩定性、專業性。
洋蔥學院將更多的人力和精力投入到了課程研發之中,打磨課程。如今,洋蔥的用戶遍佈全國,深受師生和家長的喜愛,多達3600萬學生自發推薦,社科院白皮書顯示其教師推薦度和家長滿意度分別高達85%和90%。
洋蔥學院以匠人之心打造“ 雲 ”課堂,是一群踐行教育初心的夢想家和冒險家。
查看更多:https://yqh.aliyun.com/detail/6470
上雲就看雲棲號:更多雲資訊,上雲案例,最佳實踐,產品入門,訪問:https://yqh.aliyun.com/
閱讀更多 阿里云云棲號 的文章