作業(yè)幫一課研發(fā)負(fù)責(zé)人:業(yè)務(wù)大爆炸讓我們有機會接受挑戰(zhàn)
回想起一年前的10月19日,作業(yè)幫一課做寒假班大促的場景,洪定乾仍會感到手腳發(fā)軟、頭皮發(fā)麻。
“血的教訓(xùn)啊,網(wǎng)站后臺掛了,一整個晚上,完全打不開。”
洪定乾負(fù)責(zé)作業(yè)幫一課技術(shù)研發(fā),他說責(zé)任完全在己,一頓火鍋的時間,系統(tǒng)癱瘓了。
“我正在外面吃火鍋,覺得不會有問題。同事打電話問我,能不能開閘,我說沒問題,開吧。技術(shù)團隊預(yù)估系統(tǒng)能夠扛住,當(dāng)時大家都很平和。”
結(jié)果,晚八點,時間一到,全國各地報課的家長們蜂擁而入,作業(yè)幫后臺秒癱。直到第二天早晨六點才修好。
那之前,洪定乾就清楚,經(jīng)過數(shù)年沉淀積蓄,在線教育行業(yè)和作業(yè)幫已經(jīng)踩上了風(fēng)口,他們預(yù)估那次“大促秒殺”會有幾倍增長。但他們根本沒想到,是數(shù)量級增長。
“系統(tǒng)一旦受損,恢復(fù)很復(fù)雜,我們剛把系統(tǒng)恢復(fù)一部分,馬上家長又沖進來,又扛不住了。當(dāng)時家長為孩子搶課殺紅了眼,系統(tǒng)越卡,家長越覺得課程火爆,搶的就越激烈。就這樣,反反復(fù)復(fù),整個系統(tǒng)癱瘓了一晚上。”
考驗
一課研發(fā)團隊“敗走麥城”,除了對業(yè)務(wù)暴漲預(yù)估不足,還在于他們的“傲嬌”。作業(yè)幫創(chuàng)始團隊脫胎于百度,以人工智能、大數(shù)據(jù)等硬核技術(shù)起家,有極強的互聯(lián)網(wǎng)基因,“我們一直以為技術(shù)不是我們的短板,我們的技術(shù)不會有任何問題。后來才恍然這塊成短板了。”
痛心疾首,痛下決心,去年下半年開始,作業(yè)幫不斷加大技術(shù)投入。“我們當(dāng)時定了一個目標(biāo),今年無論如何必須拿下2019暑期班這場戰(zhàn)役。”
類似電商行業(yè)的雙十一、618,在線教育每年有寒假班、暑期班兩次大促,每次大促又有兩次峰值,10月份寒假課的報課峰值和寒假期間的上課峰值,4月份暑假班報課峰值和暑期上課峰值。每次峰值都形成對后臺系統(tǒng)的一輪猛烈沖擊。
每到課程開售那一刻,家長和學(xué)生們就會瘋狂哄搶心儀的主講老師的課程。一課研發(fā)團隊在年初預(yù)估今年暑期班報課筍尖峰值將達到平時流量的180-200倍。
闖過了秒殺報課的瞬時爆炸性沖擊,洪定乾很快迎來漫長暑假直播課的高并發(fā)大流量長周期考驗。
“對于直播課場景來說,容錯幾率很低,老師講課具有邏輯和連貫性,一環(huán)扣一環(huán),如果出現(xiàn)卡頓、黑屏等故障,用戶有幾秒鐘沒聽懂,可能這節(jié)課就聽不懂了。課上有很多強交互場景,一旦有閃失,這門課的互動效果就大大折損。直播課面對的是重度付費用戶,他們對產(chǎn)品和服務(wù)質(zhì)量要求非常高,這無形中就把技術(shù)難度提高了很多。”
在線教育近年雖然大火,但是能否在技術(shù)上承接住持續(xù)的學(xué)員指數(shù)級增長,是各家公司首先要面對的。
備戰(zhàn)
2019年春節(jié)一過,一課研發(fā)團隊就全面投入到暑期備戰(zhàn)。當(dāng)時,在線教育暑期招生大戰(zhàn),已經(jīng)磨刀霍霍,沉寂多時的互聯(lián)網(wǎng)江湖,戰(zhàn)火再起。
一課研發(fā)團隊的工作集中在兩方面:一是招兵買馬,二是技術(shù)與架構(gòu)升級。
作業(yè)幫與互聯(lián)網(wǎng)巨頭激烈爭搶人才,眾多技術(shù)大牛紛紛加盟,“他們看中我們對技術(shù)的重視和投入,看中在線教育有更廣闊空間。”
與此同時,一課研發(fā)團隊基于百度云打造自己的基礎(chǔ)架構(gòu)層,在底層架構(gòu)上構(gòu)建PaaS體系。在應(yīng)用層全面迭代升級了一課的售賣、直播、課后、算法數(shù)據(jù)等幾大技術(shù)系統(tǒng)。第一,交易中臺。支撐在線購買課程,以及物流物料等。第二,教學(xué)中臺。支持視頻直播場景,是用戶量、并發(fā)量最大的業(yè)務(wù)系統(tǒng)。第三,課后系統(tǒng)。支撐班主任、客服等課后服務(wù)場景。第四,算法+數(shù)據(jù)系統(tǒng)。賦能教研、教學(xué)、服務(wù)、營銷等全場景。
其中,針對今年暑假可能比去年寒假更猛烈的爆炸式增長,制定一系列應(yīng)對預(yù)案,“直播場景對系統(tǒng)流暢性和互動的要求非常高,光提高系統(tǒng)吞吐能力是遠遠不夠的,我們對很多特殊場景做了優(yōu)化和多級緩存來應(yīng)對,同時準(zhǔn)備了備用方案來保證直播順暢。”
洪定乾介紹,直播課涉及多業(yè)務(wù)部門協(xié)同,導(dǎo)致技術(shù)鏈條長且復(fù)雜,對技術(shù)更考驗的是系統(tǒng)間的聯(lián)動和穩(wěn)定性。一些看似簡單的場景背后卻需要多個系統(tǒng)間的支持,每一環(huán)的配合要求都很高。此外,當(dāng)流量增長數(shù)倍,并不是普通人以為的服務(wù)器增長幾倍就能應(yīng)付,量變沖擊系統(tǒng)必須質(zhì)變,導(dǎo)致架構(gòu)顛覆性改造甚至推到重來。
“好在我們的技術(shù)底子厚。”首先,作業(yè)幫的技術(shù)積累豐富,從創(chuàng)始人到技術(shù)團隊的背景,都有強大的工程師文化基因以及技術(shù)基因。第二,一課擁有先進的底層架構(gòu)和技術(shù)選型。第三,對高并發(fā)大流量場景下的優(yōu)化,即直播的穩(wěn)定性領(lǐng)先。
就這樣,一課研發(fā)團隊終于完成作業(yè)幫一課技術(shù)系統(tǒng)全面升級。然后,靜靜等待大考來臨。
大考
4月17日,數(shù)百倍于平時流量的暑假班大促沖擊波如期而至,作業(yè)幫后臺最終成功經(jīng)受住了考驗。
7月15號開始,又進入長達一個多月的直播高峰期,系統(tǒng)始終平穩(wěn)高質(zhì)量運行。
“作業(yè)幫的學(xué)生覆蓋全國各地,很多來自不發(fā)達地區(qū),設(shè)備和網(wǎng)絡(luò)差異性確實非常大。其他行業(yè)完全可以放棄這極少數(shù)用戶,但作業(yè)幫不能,任何一個孩子因為卡頓、黑屏哇哇大哭,都讓人舍不得。”
直播課系統(tǒng)設(shè)計之初,作業(yè)幫就盡量降低對于終端設(shè)備性能的依賴。對于小部分性能確實較差的設(shè)備,采取臨時降級措施,首先保證直播體驗的流暢和穩(wěn)定,確保學(xué)生在課堂完整學(xué)習(xí),對次要功能體驗則做出一些取舍。
日前,作業(yè)幫創(chuàng)始人兼CEO侯建彬在某會議演講透露,今年暑假作業(yè)幫一共實現(xiàn)了總量200萬的招生人次,秋季預(yù)計能有同比400%的增長。
“不是所有公司都經(jīng)歷這樣的業(yè)務(wù)大爆炸,讓我們有機會去迎接挑戰(zhàn),是非常難得的機會。”洪定乾說。
他表示,未來一課研發(fā)團隊將保持穩(wěn)定性這一行業(yè)絕對優(yōu)勢。繼續(xù)推進中臺戰(zhàn)略,打好系統(tǒng)基礎(chǔ),加快技術(shù)在更多場景落地,以更好服務(wù)業(yè)務(wù)發(fā)展。