做者 | 山獵服務器
近年來,Serverless 一直在高速發展,並呈現出愈來愈大的影響力。主流的雲服務商也在不斷地豐富雲產品體系,提供更好的開發工具,更高效的應用交付流水線,更好的可觀測性,更細膩的產品間集成,但一切纔剛剛開始。架構
國內一些大公司已經有了一些成熟的 Serverless 應用案例,一些創業公司也開始加入 Serverless 陣營,若是說Serverless 到底解決了什麼問題,核心就是節約成本、節省精力。less
藍墨是一家由美國留學生回國創業的高科技公司,專一於移動互聯時代數字出版和移動學習領域的新技術研究及平臺運營,依託自主研發的藍墨移動交互式數字教材核心技術體系,爲出版社、學校和教師提供移動交互式數字教材、校園移動學習平臺及教師自助數字出版等解決方案。運維
自 2012 年成立以來,藍墨的技術團隊對於一些開放的新技術抱有極大的熱情,並願意應用快速迭代的互聯網新技術,來確保其業務系統穩定運行。2020 年初,疫情期間,在線教育迎來需求爆發。爲了應對高流量,藍墨加大了整合業界優質課程資源的力度,不斷拓展自身的業務邊界,在贏得機遇的同時,技術團隊也面臨了史無前例的挑戰。 異步
做爲教學平臺,藍墨天天要處理大量視頻教材資源,涉及到視頻剪輯、切分、組合、轉碼、分辨率調整、客戶端適配等一系列複雜的技術工做,視頻處理相關業務是藍墨的技術團隊面臨的最大挑戰之一。經過幾年的技術實踐,藍墨技術團隊經過 FFmpeg 等技術已經創建起一整套自主可控視頻處理機制,支撐了業務的快速發展。但今年的業務增加速度讓藍墨的技術團隊始料未及,高峯期數十倍於往年的視頻處理需求讓現有的架構不堪重負,嚴重影響了用戶體驗。分佈式
面對挑戰,最初藍墨技術團隊但願經過水平擴容解決問題,但在全天範圍內,視頻處理的需求量存在極爲陡峭的波峯波谷,大量的任務發生在幾個高峯時間段,並且具備必定程度上的突發性。若是按照最高峯期的需求量來規劃系統容量,會形成計算資源的大量浪費,並且最高峯期的需求量究竟是多少,也是很難預判的。若是採用錯峯處理的方式,能夠下降計算資源成本,但對於用戶的需求得不到及時的處理。水平擴容方案所以被放棄。 ide
還有一種解決方案是直接使用雲廠商提供的視頻轉碼服務,相似於 BaaS 的方式。採用這樣的方案的優點是,能夠徹底不用考慮容量規劃的問題,根據實際業務量按需調用雲服務便可。但藍墨的視頻處理機制作得很是精細,包含着大量自定義的業務邏輯,須要使用代碼來實現,第三方的視頻轉碼服務根本沒法知足要求。函數
推倒重來!藍墨如今的核心訴求歸納有三個:節省成本、極致彈性、免運維,而這些偏偏是 Serverless 最擅長解決的問題。通過對國內雲廠商提供的 Serverless 服務的多方面調研後,藍墨技術團隊一致認爲在視頻處理領域阿里雲函數計算是最適合他們的方案。工具
阿里雲函數計算(Function Compute,簡稱 FC)是一個事件驅動的全託管 Serverless 計算服務,對於使用者而言,無需管理服務器等基礎設施,只需編寫代碼並上傳,函數計算會準備好計算資源,並以彈性、可靠的方式運行代碼。因爲阿里雲函數計算徹底兼容現有的代碼邏輯,也可以支持各種主流的開發語言,因此藍墨技術團隊能夠把代碼邏輯以近乎無縫銜接的方式從原有的架構遷移到阿里雲函數計算上,而且成本極低。經過對接 OSS 觸發器,只要 OSS 上有新的視頻源文件上傳,就能自動拉起函數計算實例,開啓一次視頻處理業務的生命週期。經過整合 Serverless 工做流,還能對分佈式任務進行統一編排,實現對於大文件切片後進行並行處理並最終合併的複雜操做,更進一步的提高了處理效率。性能
對於藍墨的技術團隊而言,函數計算是一種徹底按需調用的 Serverless 化方案,可以充分利用雲計算的彈性能力。
相比於傳統的方式,基於阿里雲函數計算的 Serverless 方案在視頻處理場景下,幫助藍墨節省了 60% 左右的 IT 成本投入。
在享受到函數計算所帶來的巨大價值後,藍墨也積極在視頻處理以外的其餘業務領域探索能夠進行 Serverless 化改造的場景,併成功落地了阿里雲函數計算和日誌服務的集成,當日志以流的方式源源不斷寫入時,日誌服務會自動觸發函數計算對數據進行處理,分析日誌中的重要信息,實現異常事件的報警,並按照業務規則把日誌進行壓縮、轉換後存放到其餘媒介中。函數計算集成了大量的阿里雲服務如 OSS、OTS、MNS、CDN 等,也支持被其它雲服務集成,其獨特的 callback機制幫助藍墨串聯起 OSS、SLS 等存儲服務,符合開發者的編寫習慣,無需爲異步回調浪費大量的設計和容災。
藍墨技術團隊負責人表示,未來藍墨會將更多場景與阿里雲函數計算進行整合,充分享受雲原生的技術紅利,提高整個團隊的戰鬥力。而阿里雲也將一直與用戶站在一塊兒,打贏接下來每一場漂亮的戰鬥!
阿里雲是國內最先一批推出 Serverless 計算服務的企業,函數計算(Function as a Service)更是 Serverless 中最具表明性的產品形態。能夠說,藍墨並非第一家享受到函數計算 FC 巨大價值的企業,新浪微博、石墨文檔、芒果TV等都是函數計算的擁躉者。前不久,在2020可信雲線上峯會上,阿里雲函數計算FC經過了基礎能力要求、平臺可觀測能力、服務性能、服務和服務計量準確等21項測試,以所有滿分的成績經過了可信雲函數即服務能力認證。此前,在 Forrester 發佈的報告中,阿里雲函數計算被給予「強勁表現者」的評價。
除了拓展更加豐富的產品形態,阿里雲函數計算也不斷優化用戶體驗,包括作了硬盤掛載、預留實例、鏡像加速、大規模實例等業內領先的實踐,真正把用戶需求放在首位,沉下心來作對用戶更有價值的產品。