代碼零改動Serverless架構升級?這家在線編程教育企業這麼做的!

2020-12-25 獵雲網

【獵雲網北京】12月15日報導

背景

風變科技 一個希望通過技術去推動下一代基礎教育的組織。旗下產品包括第一代的熊貓書院(讀書類產品)、第二代的熊貓小課(泛學科綜合學習平臺),以及現在的風變編程(成人python教育)和風變人生設計(個人職業生涯規劃類)。

風變一直在挑戰自動化教學時長的極限,探索自動化教學效果的邊界。開闢了網際網路在線教育的新紀元——交互式、遊戲化的自動化教學方式,打造沉浸式的學習體驗,讓用戶高效掌握知識,減少知識在傳播過程中的損耗。

目前,風變聚焦於人工智慧教學,主要產品為「風變編程」自2019年1月上線以來,為全球250萬+用戶提供了850萬+ 堂課,並以實驗環境下單節課98%的完課率創造了遠超行業平均水平的神話。

在這些光鮮的數字背後,風變研發團隊「新矩陣」面臨著巨大的挑戰,面對產品功能不斷創新、業務規模迅速增長等挑戰,通過不斷升級前後端架構,提升團隊技術水平以及依靠強大的運維團隊攻克著每次的突發情況。"腳踏實地先把技術發展起來"是風變科技CTO一直以來對團隊的要求,「用技術推動下一代的基礎教育」是風變的使命,也是每位風變人心中的理想。

Serverless升級之路

風變科技前端架構師Function認為任何架構設計都是歷史下的產物,脫離實際情況談最優解都是不切實際的想法,如何在有限的人力資源和更優的方案中取得平衡,就像一棟大廈,工程師設計出結構穩定和考慮長遠的方案(可擴展性),施工人員不偷工減料(代碼質量),那麼這座大廈才能長久屹立,也能更好的面對新工程不斷改造。反之,如果缺乏對架構演進的理解,缺乏對於基礎設施能力的理解,缺乏對風險的判斷,盲目的上新技術可能不僅無法兌現業務價值,浪費精力,還會引入無謂的技術風險。

Serverless為什麼讓那麼多前端著迷?它的魅力到底在哪裡?

1.從前端工程師的個人角度來講,前端技術已進入深水區(大前端時代),更能證明自己的不是資源,而是可以創造更多的業務價值。因此都希望能擴大自己的業務範圍,進而才能有職業發展,僅做前臺展現碰不到核心業務,價值得不到體現。

2.從公司和團隊的考慮,前端團隊的核心在於業務價值,接入Serverless不是目的,目的是讓前端能夠藉助Serverless更加專注於業務邏輯,創造出更多業務價值,實現全棧工程師的角色轉變。

紙上得來終覺淺,絕知此事要躬行。風變的開發模式、工具、腳手架已經標準化、流程化,存量業務正在線上穩定運行,如何將 Serverless 融入到現有開發模式和工具中,存量業務的遷移如何絲般潤滑等等技術痛點,在風變前端基建團隊的努力以及阿里雲Serverless雲開發平臺團隊的助力下,已經完成了serverless架構的整體建設,與前端工程化和自動化相結合,並且集成本地CICD工作流,通過對應的邏輯採用命令行工具將開發鏈路串聯起來形成工具鏈,讓風變所有前端工程師能更好地創造出更多的業務價值,讓成為全棧工程師變成可能。

阿里云云開發平臺賦能

阿里云云開發平臺,https://workbench.aliyun.com,是阿里雲面向廣大開發者及企業提供的雲上研發工作平臺,助力研發團隊實現工作的在線化(團隊在線、環境在線、代碼在線、協同在線)以及研發模式Serverless化,幫助研發團隊實現對行業架構經驗及架構服務的高效分享與傳播,極致提升研發效率,極致降低研發成本。

阿里云云開發平臺為企業開發Serverless應用提供了幾種重要能力:

存量項目可遷移

目前開發者體驗serverless項目大多是些簡單的helloworld函數,這根本無法承載大多數業務項目。為此,阿里云云開發平臺提供了存量項目遷移方案,通過抽象一層透明的serverless框架適配業務程序,使其可以運行在FAAS環境上。抽象Serverless框架層的好處在於無需修改用戶存量代碼,直接將項目升級為Serverless架構。

目前阿里云云開發平臺支持多種技術棧的多種框架的適配升級:

Nodejs技術棧所有框架均無縫升級

Python常用框架Django、Flask、FastAPI、Tornado以及Twisted支持無縫升級

PHP的常用框架配合自定義運行時升級

風變科技採用阿里云云開發平臺提供「Nodejs存量應用解決方案」,實現了代碼零改動升級Serverless架構,目前已支撐公司官網系統以及其他重點業務。

雲部署能力本地化

大多數公司都有自己的開發工作流程,這包括內部代碼託管、團隊協作、權限控制與風控、公司獨特的CI/CD,如何低成本的兼容這套原有體系是Serverless應用能否「本地化」,讓企業和開發者接受與認同的最關鍵的一點。

阿里云云開發平臺提供了「雲端一體化部署」與「本地部署」的能力,企業可以通過使用阿里云云開發平臺部署套件實現本地部署,兼容企業原有CI/CD流程,讓Serverless應用實現「端+雲」加持,靈活可控。

風變科技採用阿里云云開發平臺本地化部署能力,在兼容當前企業的發布規範、審核、風控以及灰度的前提下實現眾多項目的無痛升級Serverless架構,大大賦能開發人員生產力,減少運維成本。

Serverless應用可調試

Serverless應用開發另一痛點是無法像在本地開發應用一樣斷點調試、實時預覽,只有在部署到對應雲廠商環境上才可測試預覽。

阿里云云開發平臺通過分析Serverless運行時架構,在開發態模擬函數運行時,實時輕量化運行、輸出。實現serverless應用的實時調試。

通過阿里云云開發平臺的賦能,不僅可斷點調試Serverless應用,也可實時預覽、查看運行時輸出,不用部署即可完成功能性驗證,敏捷開發靈活迭代。

Serverless升級體驗

風變科技的官網以及多個中後臺系統升級到Serverless架構後,在某些方面感受到了明顯的不同:

原有存量工程零改動直接升級Serverless架構,開發模式開發規範等均不改變

部署方便,直接集成到企業CICD流程中

通過阿里云云開發平臺提供的Open API,集成進公司內部獨有的開發命令行工具Rakete,實現團隊內部開發鏈路一體化打通

上線後無需運維,自動彈性擴縮容

完備的日誌和流量監測功能,實時掌握服務運行狀態

上線一個月,成本環比下降了45%

下一步,風變科技會和阿里云云開發平臺深入合作,將在全站推動項目升級,徹底擁抱雲原生Serverless時代。

相關焦點

  • 代碼零改動Serverless架構升級?
    本期文章由風變科技架構師@Function投稿分享。
  • Serverless架構的前世今生
    但無論這些技術應用在哪裡,幫助企業「降本增效」是技術變革永恆的主題。Serverless架構的出現,帶來了跨越式的變革。Serverless下主機管理、作業系統管理、基礎軟體的部署運維、資源分配和擴縮容能力全部由雲廠商提供,把計算能力做成像水電煤一樣的公共服務,這就意味著基於Serverless服務構建應用,開發者只需要專注在產品代碼上,而無需管理和操作雲端服務運行環境,計算資源從過去購買「伺服器」轉向購買對應的「服務」。
  • 【每日一黑馬】泡麵吧創始人自述:如何玩轉計算機編程在線教育?
    不久前,這個尚在內測階段的在線計算教育平臺,已獲得百萬元人民幣的天使投資,英諾天使基金領投,北軟天使基金跟投。現在網站上線一個多月,這個產品主要承載現在剛入學的大學生和一些高中生。對於入門,有一套的產品邏輯在裡面,我們現在產品左邊是文字的邊界,右邊是一個編輯器,左邊給你講完內容以後,你在右邊寫出代碼,檢測出代碼合法以後,左邊的內容會變,當你寫出一段完整的代碼,點擊運行整個就完成了。完全是人機互動,與機器的互動而不是跟人的互動。
  • 雲端研發新基建:Serverless 與持續架構服務落地實踐
    幫助行業開發生態無縫升級至先進的雲原生 Serverless 架構。 我們聯合雲效,共同構建了一個在線研發團隊的能力,團隊規模從 1-10 人 到 1000 人以上,全都免費提供,助力企業快速成長! 1 分鐘完成研發團隊的在線化:在雲開發平臺,團隊管理者創建好自己的企業,然後創建一批子帳號分配給每一個團隊成員,團隊即完成了在線化。
  • 零代碼時代即將到來?沒那麼簡單
    創新使企業在競爭同行中脫穎而出。當所有企業的想法都一致時,整個行業的服務會變得單一而平庸。這對一些企業來說不算什麼壞消息,但消費者可不一定會喜歡。然而,許多企業的數位化轉型都以失敗告終。因為要實現這一質的飛躍,一般企業先得轉型成為至少半個軟體開發公司,當然,大多數企業並不具備這樣的條件。
  • 零代碼時代即將到來?沒那麼簡單!
    所以,「零代碼」時代真的要到來了嘛?沒那麼簡單!為什麼要「零代碼」?「零代碼」的優勢很明顯。培養一個軟體開發人員的成本很高,人才稀缺,而且一般的軟體開發人員資歷尚淺,再加上運維成本很高,軟體項目的開發也就困難重重。一個「數位化企業」需要大量的軟體,而且絕大部分都是量身定製的,無法實現量產。於是,整個市場對軟體的需求量是十分大的。
  • 零代碼FPGA圖形化編程 VS 精妙FPGA編程實現軟體無線電,隨你挑
    與此同時,也有同學問:我想快速進入邏輯電路設計,而既然以前都有過用傳統的74系列邏輯器件做出複雜電路的案例,做FPGA設計是不是也可以用模塊化的方式完成?這樣的話,可以節省學習掌握Verilog語言的時間精力,將注意力回歸邏輯電路結構的本質。 不要代碼編程FPGA VS 用精妙代碼編程FPGA,各有各精彩,該怎麼選擇?
  • 編程架構師需要具備哪些特點
    在網際網路行業中,編程架構師需要具備哪些特點呢?Java架構師在網際網路行業中是一個不錯的方向,在不久的將來我們的日常生活也會被大數據引導,生活也會更加方便。編程方面的人才會變得越來越重要,這個職業主要是針對大數據平臺程序架構進行設計,做開發構架規範,進行核心代碼的編寫。
  • 騰訊 IMWEB 前端團隊一站式 Serverless 開發解決方案
    目前聚焦於在線教育領域,精心打磨 騰訊課堂、企鵝輔導及 ABCmouse 三大產品。學習成就夢想,我們希望能用技術改變教育,改變世界。請求比較困難,導致開發想要調試定位問題時,只能先將代碼部署到 serverless 上,這裡就需要等待部署了,由於 serverless 是外網的,部署時間就更長了
  • 奧哲攜手阿里雲SaaS加速器,助力企業快速實現業務在線化
    2020年6月24日,奧哲宣布,作為阿里雲SaaS加速器的重要合作夥伴,與阿里雲的聯合解決方案也已在各行各業實際落地,在新零售、教育、金融等領域提供豐富的行業解決方案,促使企業在業務在線化中真正達到「便捷、省時、安全」。
  • 雲原生應用架構轉型不好做?阿里雲這個平臺讓你一步到位!
    3.研發模式、組織陣型與雲原生的適配問題雲原生通常以微服務架構進行服務開發,函數計算更細粒度到函數級別。鬆耦合的架構方式會減輕因需求變更導致的系統迭代成本,並加快交付速度。微服務使得單個服務的開發團隊更小,也更加獨立,這種鬆耦合+獨立小型的團隊使得持續更新和敏捷協作成為可能。在這種情況下,雲端出現的問題解決會更突出,在線協作將比線下交流會有更高的效能。
  • 艾編程:轉型IT學什麼語言好,學程式語言為何要重視代碼規範?
    轉型到it方面,其實你才畢業學習什麼都還是容易學習的,所以IT行業目前比較持久火熱的專業是Java,很多企業都在用java,而這兩年java進階架構師方面的體系還是非常火熱的,而且隨著這兩年java領域的微服務和技術棧的火熱,讓java項目構建成為了一個主流框架,之前早期很多企業採用php語音、asp語音的架構網站都開始逐步轉型到了java,所以java是很多企業級項目開發主流架構
  • 編程貓獲首批在線教育服務5A級認證 質量肯定在線教育生存基礎
    研討會上,中國質量認證中心副主任李國振頒發了全國首批在線教育服務5A級認證,編程貓與網易有道、學而思及學堂在線四家機構脫穎而出,一起成為了首批獲得「在線教育服務認證」5A級認證證書的頭部優質企業。李國振表示,新形勢新機遇下,在線教育機構只有格外注重品質,以教育質量為標準,才能真正推動行業的蓬勃發展和產業的興旺發達。
  • 程式設計師們,請你們不要排斥零代碼
    但這不是重點,我們想要達成的目標,是讓現役程式設計師做點真正有價值的活,而把那些重複性的開發工作完全削減。稱為「零代碼」,的確包含一些市場宣言的意圖成分。零代碼平臺替代哪些軟體開發工作?概括來說,以明道云為代表的零代碼平臺主要用於企業中後臺應用領域,尤其是圍繞數據管理和工作流相關的應用類別,他們一般都用於企業內部,有時候也會延伸到外部客戶和合作夥伴。
  • 如何用 Serverless 優雅地實現圖片藝術化應用
    本文將分享如何從零開始搭建一個基於騰訊雲 Serverless 的圖片藝術化應用!項目已開源,完整代碼見文末線上 demo 預覽: https://art.x96.xyz/在完整閱讀文章後,讀者應該能夠實現並部署一個相同的應用,這也是本篇文章的目標。
  • 採用全英文教學,FCA要打通代碼編程與英文的學習
    全英文授課,融合人工智慧課程FCA課堂採用的是全英文授課,對此,辛婥琳告訴芥末堆,對於年齡較小的學生學習的是圖形化編程,學習時用到英語的地方很少,因此並不會增加學生的學習門檻。對於年齡稍大的學生,因為代碼的一些基礎語言是英語,如果用英文教學可以使教學過程更加流暢。
  • 編程貓首批獲得在線教育服務5A級認證
    而在線教育服務認證可以對在線教育服務提供者進行規範,提高在線教育服務質量,保障受教育的權利。   教學與服務質量是生存的基礎,四家在線教育企業獲5A級認證   近年來,技術的進步、經濟的發展、教育理念的升級,讓在線教育實現了蓬勃發展。2020年疫情催化下,在線教育需求集中爆發,教育線上化趨勢和線上教學的必要性愈發凸顯。
  • 編程入門先學什麼?零經驗的人學編程難嗎
    一聽編程兩個字很多人都在退縮了,有很多的同學是非常的想知道,編程入門先學什麼,零經驗的人學編程難不難,小編整理了相關信息,希望會對大家有所幫助!零經驗的人學編程難嗎022、零經驗學編程好學嗎要看你的領悟性了。你現在25歲學編程不晚。
  • 零代碼FPGA圖形化編程十日談
    賴老師在這個課程裡借鑑國際上scratch、blockly等圖形化程式語言形式,以及伯克利大學Logisim項目的經驗,在參與Github開源項目Digiblock的基礎上,反過來用圖形化結構「包裝」特定功能的Verilog代碼,通過「搭積木」的形式零代碼構建數字電路。實現硬體電路結構圖就是最終設計結果,軟體自動轉化成Verilog代碼,一步到位下載FPGA運行。