第25章 非典大爆發
四月的第一天,雨從凌晨就開始下。不是春雨該有的細密溫柔,是那種粗暴的、橫著掃的雨,砸在玻璃上噼啪作響,像無數隻手在拼命拍打窗子。天色始終是鉛灰的,分不清是晨是暮。
林浩站在十七樓的窗前,看著外面的雨幕。省城的高樓在雨里模糊成一片灰影,街道上空蕩蕩的,偶爾有車駛過,濺起一人高的水花。紅綠燈兀自變換,但沒車看。整座城市像被按了靜音鍵,只有雨聲,無窮無盡的雨聲。
辦公室里很安靜。雖然坐滿了三十一個人,但沒人說話。鍵盤聲是壓抑的,滑鼠點擊是克制的,連咳嗽都捂著嘴,悶悶的。空氣里有消毒水的味道,混著速溶咖啡的焦苦,和一種緊繃的、隨時會斷裂的緊張感。
非典的數字每天都在跳。昨天,全國新增病例破百;今天,可能就破兩百。電視裡,穿白大褂的專家語氣凝重,重複著「少出門、戴口罩、勤洗手」。報紙頭版是大號黑體字:「抗擊非典,全民動員」。論壇里,恐慌像瘟疫一樣蔓延——不,瘟疫本身就在蔓延。
「網吧停了。」王磊的聲音在身後響起,很輕,但像一塊石頭砸進死水。
林浩轉過身。王磊站在他身後,手裡拿著一張列印紙,是省文化廳的紅頭文件掃描件:「關於暫停全省網際網路上網服務營業場所經營活動的緊急通知」。日期是昨天,生效時間是今天零點。
「全停了?」林浩問。
「全停了。文件說,為切斷傳染途徑,全省網吧、遊戲廳、歌舞廳等密閉娛樂場所,即日起暫停營業,恢復時間另行通知。」
意料之中。上輩子就是這樣。四月,全國網吧陸續關門,學生們被趕回家,上班族居家辦公,所有人被困在房子裡。線下娛樂全死,線上娛樂……瘋了。
「我們的數據呢?」林浩走回座位。
「昨晚十二點,在線人數從八萬掉到六萬——網吧用戶掉了。但今天早上開始回升,現在……」王磊看了一眼後台,「七萬三,還在漲。都是家庭用戶。」
「下載量?」
「暴增。昨天客戶端下載三萬次,今天上午就破了兩萬。按這速度,今天能破五萬。」
「伺服器壓力?」
「還能撐。但家庭網絡狀況複雜,延遲從平均80毫秒升到120毫秒,玩家開始抱怨卡。」
「優化網絡代碼。家庭寬帶多是ADSL,上傳帶寬小,我們減少上行數據量。狀態同步從每秒十次降到五次,用差值補償。」
「已經在做了。」阿坤從屏幕前抬起頭,眼睛通紅,「但趙永不同意。他說降低同步頻率會導致預測錯誤累積,體驗變差。」
「讓他來。」
趙永走過來,三十出頭,頭髮梳得整齊,但臉色疲憊。他是前網易主程,被林浩高薪挖來,技術紮實,但保守。
「林總,同步頻率不能降。」趙永開口,語氣是技術人的固執,「《血戰天下》的核心優勢就是流暢。降到五赫茲,PK手感會變肉,玩家能感覺到。」
「但伺服器撐不住。」林浩說,「現在七萬人在線,同步十赫茲,每秒七十萬次狀態同步。等在線人數破十萬,就是百萬次。伺服器CPU會炸。」
「可以加伺服器,做負載均衡。」
「來不及。新伺服器訂貨要兩周,裝機調試要一周。非典期間,物流都慢。」林浩看著趙永,「我們需要一個臨時方案,撐過這兩周。等新伺服器到了,再調回來。」
趙永沉默了幾秒:「那就做智能同步。根據玩家網絡狀況動態調整。區域網或光纖用戶,保持十赫茲。ADSL用戶,降到五赫茲。但客戶端要做網絡檢測,自動適配。」
「好方案。」林浩點頭,「阿坤,你來實現。今天下班前上線。」
「我跟他一起。」趙永說,「網絡檢測的算法我有經驗。」
「行。辛苦。」
兩人回到座位,頭湊在一起討論。林浩看著他們的背影,微微鬆口氣。趙永雖然保守,但專業。阿坤雖然野路子,但靈活。這兩個人能合作,是好事。
下午,雨小了些,但天更陰了。辦公室開了燈,白慘慘的光照在每個人臉上。鍵盤聲密集起來,像暴雨前的鼓點。
小雨端著水杯走過來,聲音有點抖:「林總,客服那邊……頂不住了。今天諮詢量是平時的二十倍。有人問遊戲會不會關服,有人問點卡能不能退,有人罵我們發國難財……還有人說,玩我們遊戲染上了非典,要我們賠錢。」
「發國難財?」林浩皺眉。
「有帖子,說我們趁非典推廣遊戲,誘導青少年沉迷,影響學習,破壞抗疫。」小雨把筆記本轉過來,是一個知名論壇的帖子,標題:「《血戰天下》在非典期間的野蠻生長,是技術的勝利,還是道德的淪喪?」
發帖人自稱是教育工作者,言辭激烈:「在全國人民眾志成城抗擊非典時,這家遊戲公司卻在瘋狂拉新、瘋狂斂財。多少學生因為停課在家沉迷遊戲,多少家長憂心忡忡。這是趁火打劫,是發國難財!」
下面回復吵成一團。有玩家反駁「遊戲是精神慰藉」,有家長贊同「該管管了」,有同行酸「人家賺得多你眼紅」。
「要不要回應?」小雨問。
「不回應。」林浩說,「但要做兩件事。第一,在遊戲裡加抗疫公益GG。登錄界面、加載畫面,加上『勤洗手、戴口罩、少出門』的提示。遊戲內郵件,每天發一條防疫知識。第二,捐錢。以浩宇科技名義,向省紅十字會捐款一百萬,指定用於抗疫物資採購。捐款憑證發公告,不解釋,不煽情。」
「一百萬?!」小雨瞪大眼。
「就一百萬。現在捐,今天辦完手續,明天發公告。」
「好……我馬上去聯繫。」
小雨匆匆走開。林浩揉了揉太陽穴。一百萬,對現在的浩宇來說,不是小數目。但必須捐。不止是公關,是真心。上輩子,他經歷過非典,知道前線的醫護人員有多難。這輩子,他有錢了,該做點事。
傍晚,智能同步系統上線。玩家幾乎無感知,但伺服器壓力降了30%。在線人數突破八萬,回到網吧關門前的高點。下載量破四萬。
晚上八點,尖峰時段。林浩盯著監控後台。在線人數曲線像心跳圖,突突地往上跳:八萬二,八萬五,九萬……突破九萬,還在漲。
「伺服器CPU 90%了。」王磊聲音緊繃。
「關掉非核心服務。排行榜延遲更新,郵件系統暫停推送,世界聊天頻道限流。優先保證戰鬥同步。」林浩說。
「在做了。」
九點半,在線人數突破十萬。辦公室里響起低低的吸氣聲。十萬同時在線,在2003年,是頂級網遊的門檻。盛大《傳奇》最高也就五十萬,但那是運營兩年的成績。浩宇才四個月。
「林總,」趙永走過來,臉色嚴肅,「十萬人在線,智能同步也撐不住了。必須限制新用戶登錄,否則伺服器隨時會崩。」
「不限制。」林浩說,「玩家這時候來,是信任我們。崩了,就永遠失去他們了。」
「那怎麼辦?」
「臨時方案:分區。」林浩在白板上畫,「把遊戲世界分成四個大區,每個區承載兩萬五千人。玩家註冊時隨機分配,不同區數據不通。這是下策,但能救命。」
「分區……」趙永皺眉,「玩家會罵。朋友在不同區,不能一起玩。」
「總比進不來強。先分區,等新伺服器到了,再合區。發公告,誠懇說明原因,補償全服玩家。信我們的人,會等。不信的,留不住。」
「行。我連夜做。」
「阿坤配合。王磊,你聯繫伺服器廠商,加急,加錢,三天內我要看到二十台新伺服器上架。」
「明白。」
命令下達,辦公室進入戰爭狀態。程序組連夜寫分區代碼,運維組準備數據遷移,客服組擬寫公告。林浩坐在中間,像船長,盯著四面八方的風暴。
凌晨兩點,分區系統完成。測試通過,準備上線。
「發公告吧。」林浩說。
小雨點頭,敲下回車。全服公告,遊戲內彈窗,論壇置頂,三管齊下:
「致《血戰天下》全體玩家:因在線人數激增,為保障遊戲體驗,伺服器將於凌晨三點進行臨時分區調整。調整後,玩家將根據註冊時間分配到四個大區(青龍、白虎、朱雀、玄武)。不同大區數據暫時不通,好友、公會、郵件等功能將受影響。我們已緊急採購新伺服器,預計一周內完成擴容並恢復合區。為表歉意,全服玩家將獲得補償:金幣x5000,強化石x20,隨機紫裝x1。感謝理解與支持。浩宇科技,與您共克時艱。」
公告發出,世界頻道炸了。有罵的,有理解的,有問補償的。但三分鐘後,大部分玩家選擇了接受——畢竟,有補償,而且只是暫時的。
凌晨三點,伺服器重啟。四十分鐘後,分區完成。在線人數重新攀升,但壓力分散了。四個區,每個區兩萬五,伺服器CPU降到70%。
「穩住了。」王磊長舒一口氣。
林浩點點頭,但沒放鬆。他走到窗前,雨停了,但夜還黑著。遠處的樓宇零星亮著燈,像困在黑暗裡的眼睛。
他想起父母。下午通電話,父親燒退了,但還在咳嗽。母親說,縣裡有了兩例疑似,小區封了,出不去了。他說寄口罩和藥,母親說不用,省著點,你們那邊更需要。
他需要什麼?需要伺服器,需要帶寬,需要人手,需要時間。但最需要的,是這場疫情快點過去。非典是機遇,但也是災難。每一條上漲的數據曲線背後,都是一個被困在家裡的人,一個焦慮的家庭,一個在前線拼命的白衣戰士。
他不是在發國難財。他是在提供避難所。至少,他是這麼告訴自己的。
凌晨四點,辦公室大部分人趴下了。行軍床上,桌子上,椅子上,橫七豎八。只有鍵盤聲還在響,是阿坤和趙永,在優化分區算法。
林浩走到他們身後。屏幕上,代碼快速滾動。阿坤在寫一個合區預演工具,模擬合區時的數據合併衝突。趙永在調負載均衡的權重分配。兩人沒說話,但配合默契。
「去睡會兒。」林浩說。
「馬上好。」阿坤頭也不抬。
「我盯著,你們去睡。明天……不,今天還有硬仗。」
兩人這才停下,揉了揉眼睛,起身。阿坤走到窗邊,看著外面漆黑的夜。
「林浩,」他輕聲說,「今天下載量破十萬了。十萬個客戶端,十萬個新玩家。他們這時候來,是真的沒地方去了。」
「嗯。」
「我們做的遊戲,成了他們的避難所。這是好事,還是壞事?」
「是責任。」林浩說,「所以他們不能崩,不能卡,不能讓他們失望。」
阿坤點點頭,走回去,趴在桌上睡了。
林浩坐回自己座位,打開後台。下載量:103,847。破十萬了。在線人數:102,319。也破十萬了。充值流水:單日兩百四十萬。
數字冰冷,但滾燙。
他關掉屏幕,靠在椅背上,閉上眼睛。很累,但睡不著。
窗外的天,漸漸亮了。灰白的,朦朦朧朧的光,滲進辦公室。
新的一天,要來了。
疫情還在繼續,戰鬥還在繼續。
浩宇,也在繼續。
他站起身,走到咖啡機前,沖了一杯最濃的。苦,但提神。
然後坐回去,打開文檔,開始寫下一版本的策劃案。
鍵盤聲,又響起來了。嗒。嗒嗒。嗒。
在黎明的寂靜里,像心跳,像誓言。
林浩站在十七樓的窗前,看著外面的雨幕。省城的高樓在雨里模糊成一片灰影,街道上空蕩蕩的,偶爾有車駛過,濺起一人高的水花。紅綠燈兀自變換,但沒車看。整座城市像被按了靜音鍵,只有雨聲,無窮無盡的雨聲。
辦公室里很安靜。雖然坐滿了三十一個人,但沒人說話。鍵盤聲是壓抑的,滑鼠點擊是克制的,連咳嗽都捂著嘴,悶悶的。空氣里有消毒水的味道,混著速溶咖啡的焦苦,和一種緊繃的、隨時會斷裂的緊張感。
非典的數字每天都在跳。昨天,全國新增病例破百;今天,可能就破兩百。電視裡,穿白大褂的專家語氣凝重,重複著「少出門、戴口罩、勤洗手」。報紙頭版是大號黑體字:「抗擊非典,全民動員」。論壇里,恐慌像瘟疫一樣蔓延——不,瘟疫本身就在蔓延。
「網吧停了。」王磊的聲音在身後響起,很輕,但像一塊石頭砸進死水。
林浩轉過身。王磊站在他身後,手裡拿著一張列印紙,是省文化廳的紅頭文件掃描件:「關於暫停全省網際網路上網服務營業場所經營活動的緊急通知」。日期是昨天,生效時間是今天零點。
「全停了?」林浩問。
「全停了。文件說,為切斷傳染途徑,全省網吧、遊戲廳、歌舞廳等密閉娛樂場所,即日起暫停營業,恢復時間另行通知。」
意料之中。上輩子就是這樣。四月,全國網吧陸續關門,學生們被趕回家,上班族居家辦公,所有人被困在房子裡。線下娛樂全死,線上娛樂……瘋了。
「我們的數據呢?」林浩走回座位。
「昨晚十二點,在線人數從八萬掉到六萬——網吧用戶掉了。但今天早上開始回升,現在……」王磊看了一眼後台,「七萬三,還在漲。都是家庭用戶。」
「下載量?」
「暴增。昨天客戶端下載三萬次,今天上午就破了兩萬。按這速度,今天能破五萬。」
「伺服器壓力?」
「還能撐。但家庭網絡狀況複雜,延遲從平均80毫秒升到120毫秒,玩家開始抱怨卡。」
「優化網絡代碼。家庭寬帶多是ADSL,上傳帶寬小,我們減少上行數據量。狀態同步從每秒十次降到五次,用差值補償。」
「已經在做了。」阿坤從屏幕前抬起頭,眼睛通紅,「但趙永不同意。他說降低同步頻率會導致預測錯誤累積,體驗變差。」
「讓他來。」
趙永走過來,三十出頭,頭髮梳得整齊,但臉色疲憊。他是前網易主程,被林浩高薪挖來,技術紮實,但保守。
「林總,同步頻率不能降。」趙永開口,語氣是技術人的固執,「《血戰天下》的核心優勢就是流暢。降到五赫茲,PK手感會變肉,玩家能感覺到。」
「但伺服器撐不住。」林浩說,「現在七萬人在線,同步十赫茲,每秒七十萬次狀態同步。等在線人數破十萬,就是百萬次。伺服器CPU會炸。」
「可以加伺服器,做負載均衡。」
「來不及。新伺服器訂貨要兩周,裝機調試要一周。非典期間,物流都慢。」林浩看著趙永,「我們需要一個臨時方案,撐過這兩周。等新伺服器到了,再調回來。」
趙永沉默了幾秒:「那就做智能同步。根據玩家網絡狀況動態調整。區域網或光纖用戶,保持十赫茲。ADSL用戶,降到五赫茲。但客戶端要做網絡檢測,自動適配。」
「好方案。」林浩點頭,「阿坤,你來實現。今天下班前上線。」
「我跟他一起。」趙永說,「網絡檢測的算法我有經驗。」
「行。辛苦。」
兩人回到座位,頭湊在一起討論。林浩看著他們的背影,微微鬆口氣。趙永雖然保守,但專業。阿坤雖然野路子,但靈活。這兩個人能合作,是好事。
下午,雨小了些,但天更陰了。辦公室開了燈,白慘慘的光照在每個人臉上。鍵盤聲密集起來,像暴雨前的鼓點。
小雨端著水杯走過來,聲音有點抖:「林總,客服那邊……頂不住了。今天諮詢量是平時的二十倍。有人問遊戲會不會關服,有人問點卡能不能退,有人罵我們發國難財……還有人說,玩我們遊戲染上了非典,要我們賠錢。」
「發國難財?」林浩皺眉。
「有帖子,說我們趁非典推廣遊戲,誘導青少年沉迷,影響學習,破壞抗疫。」小雨把筆記本轉過來,是一個知名論壇的帖子,標題:「《血戰天下》在非典期間的野蠻生長,是技術的勝利,還是道德的淪喪?」
發帖人自稱是教育工作者,言辭激烈:「在全國人民眾志成城抗擊非典時,這家遊戲公司卻在瘋狂拉新、瘋狂斂財。多少學生因為停課在家沉迷遊戲,多少家長憂心忡忡。這是趁火打劫,是發國難財!」
下面回復吵成一團。有玩家反駁「遊戲是精神慰藉」,有家長贊同「該管管了」,有同行酸「人家賺得多你眼紅」。
「要不要回應?」小雨問。
「不回應。」林浩說,「但要做兩件事。第一,在遊戲裡加抗疫公益GG。登錄界面、加載畫面,加上『勤洗手、戴口罩、少出門』的提示。遊戲內郵件,每天發一條防疫知識。第二,捐錢。以浩宇科技名義,向省紅十字會捐款一百萬,指定用於抗疫物資採購。捐款憑證發公告,不解釋,不煽情。」
「一百萬?!」小雨瞪大眼。
「就一百萬。現在捐,今天辦完手續,明天發公告。」
「好……我馬上去聯繫。」
小雨匆匆走開。林浩揉了揉太陽穴。一百萬,對現在的浩宇來說,不是小數目。但必須捐。不止是公關,是真心。上輩子,他經歷過非典,知道前線的醫護人員有多難。這輩子,他有錢了,該做點事。
傍晚,智能同步系統上線。玩家幾乎無感知,但伺服器壓力降了30%。在線人數突破八萬,回到網吧關門前的高點。下載量破四萬。
晚上八點,尖峰時段。林浩盯著監控後台。在線人數曲線像心跳圖,突突地往上跳:八萬二,八萬五,九萬……突破九萬,還在漲。
「伺服器CPU 90%了。」王磊聲音緊繃。
「關掉非核心服務。排行榜延遲更新,郵件系統暫停推送,世界聊天頻道限流。優先保證戰鬥同步。」林浩說。
「在做了。」
九點半,在線人數突破十萬。辦公室里響起低低的吸氣聲。十萬同時在線,在2003年,是頂級網遊的門檻。盛大《傳奇》最高也就五十萬,但那是運營兩年的成績。浩宇才四個月。
「林總,」趙永走過來,臉色嚴肅,「十萬人在線,智能同步也撐不住了。必須限制新用戶登錄,否則伺服器隨時會崩。」
「不限制。」林浩說,「玩家這時候來,是信任我們。崩了,就永遠失去他們了。」
「那怎麼辦?」
「臨時方案:分區。」林浩在白板上畫,「把遊戲世界分成四個大區,每個區承載兩萬五千人。玩家註冊時隨機分配,不同區數據不通。這是下策,但能救命。」
「分區……」趙永皺眉,「玩家會罵。朋友在不同區,不能一起玩。」
「總比進不來強。先分區,等新伺服器到了,再合區。發公告,誠懇說明原因,補償全服玩家。信我們的人,會等。不信的,留不住。」
「行。我連夜做。」
「阿坤配合。王磊,你聯繫伺服器廠商,加急,加錢,三天內我要看到二十台新伺服器上架。」
「明白。」
命令下達,辦公室進入戰爭狀態。程序組連夜寫分區代碼,運維組準備數據遷移,客服組擬寫公告。林浩坐在中間,像船長,盯著四面八方的風暴。
凌晨兩點,分區系統完成。測試通過,準備上線。
「發公告吧。」林浩說。
小雨點頭,敲下回車。全服公告,遊戲內彈窗,論壇置頂,三管齊下:
「致《血戰天下》全體玩家:因在線人數激增,為保障遊戲體驗,伺服器將於凌晨三點進行臨時分區調整。調整後,玩家將根據註冊時間分配到四個大區(青龍、白虎、朱雀、玄武)。不同大區數據暫時不通,好友、公會、郵件等功能將受影響。我們已緊急採購新伺服器,預計一周內完成擴容並恢復合區。為表歉意,全服玩家將獲得補償:金幣x5000,強化石x20,隨機紫裝x1。感謝理解與支持。浩宇科技,與您共克時艱。」
公告發出,世界頻道炸了。有罵的,有理解的,有問補償的。但三分鐘後,大部分玩家選擇了接受——畢竟,有補償,而且只是暫時的。
凌晨三點,伺服器重啟。四十分鐘後,分區完成。在線人數重新攀升,但壓力分散了。四個區,每個區兩萬五,伺服器CPU降到70%。
「穩住了。」王磊長舒一口氣。
林浩點點頭,但沒放鬆。他走到窗前,雨停了,但夜還黑著。遠處的樓宇零星亮著燈,像困在黑暗裡的眼睛。
他想起父母。下午通電話,父親燒退了,但還在咳嗽。母親說,縣裡有了兩例疑似,小區封了,出不去了。他說寄口罩和藥,母親說不用,省著點,你們那邊更需要。
他需要什麼?需要伺服器,需要帶寬,需要人手,需要時間。但最需要的,是這場疫情快點過去。非典是機遇,但也是災難。每一條上漲的數據曲線背後,都是一個被困在家裡的人,一個焦慮的家庭,一個在前線拼命的白衣戰士。
他不是在發國難財。他是在提供避難所。至少,他是這麼告訴自己的。
凌晨四點,辦公室大部分人趴下了。行軍床上,桌子上,椅子上,橫七豎八。只有鍵盤聲還在響,是阿坤和趙永,在優化分區算法。
林浩走到他們身後。屏幕上,代碼快速滾動。阿坤在寫一個合區預演工具,模擬合區時的數據合併衝突。趙永在調負載均衡的權重分配。兩人沒說話,但配合默契。
「去睡會兒。」林浩說。
「馬上好。」阿坤頭也不抬。
「我盯著,你們去睡。明天……不,今天還有硬仗。」
兩人這才停下,揉了揉眼睛,起身。阿坤走到窗邊,看著外面漆黑的夜。
「林浩,」他輕聲說,「今天下載量破十萬了。十萬個客戶端,十萬個新玩家。他們這時候來,是真的沒地方去了。」
「嗯。」
「我們做的遊戲,成了他們的避難所。這是好事,還是壞事?」
「是責任。」林浩說,「所以他們不能崩,不能卡,不能讓他們失望。」
阿坤點點頭,走回去,趴在桌上睡了。
林浩坐回自己座位,打開後台。下載量:103,847。破十萬了。在線人數:102,319。也破十萬了。充值流水:單日兩百四十萬。
數字冰冷,但滾燙。
他關掉屏幕,靠在椅背上,閉上眼睛。很累,但睡不著。
窗外的天,漸漸亮了。灰白的,朦朦朧朧的光,滲進辦公室。
新的一天,要來了。
疫情還在繼續,戰鬥還在繼續。
浩宇,也在繼續。
他站起身,走到咖啡機前,沖了一杯最濃的。苦,但提神。
然後坐回去,打開文檔,開始寫下一版本的策劃案。
鍵盤聲,又響起來了。嗒。嗒嗒。嗒。
在黎明的寂靜里,像心跳,像誓言。