當(dāng)前位置:首頁(yè) > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]當(dāng)寫(xiě)作的第一個(gè)腳本通過(guò)我開(kāi)發(fā)的編譯器編譯運(yùn)行起來(lái),我激動(dòng)的心情久久不能平復(fù)。這段經(jīng)歷讓自己z明白,學(xué)習(xí)沒(méi)有捷徑,踏踏實(shí)實(shí)去做才是最有效的方法。

創(chuàng)新是什么?面對(duì)難題,是不是可以不按常理出牌,反其道而行之?

 

 

處理灰塵,為什么一定是吹掉,而不是吸到一起?

保存食物,為什么一定是高溫殺菌,而不是低溫冷凍?

基站不美觀,為什么一定要設(shè)計(jì)精美的外形,而不是加以偽裝?

……

也許將問(wèn)題反過(guò)來(lái),換一種思路就是能海闊天空。

2004年我畢業(yè)進(jìn)入華為,轉(zhuǎn)眼已經(jīng)在無(wú)線OSS(運(yùn)營(yíng)支撐系統(tǒng))部門(mén)工作了15個(gè)年頭?;厥走@些年,我個(gè)人的每一步都和網(wǎng)管開(kāi)放的腳步同步,從寫(xiě)代碼到讓代碼自動(dòng)生成,從被人指導(dǎo)到指導(dǎo)別人,從提供標(biāo)準(zhǔn)化的“菜品”到提供個(gè)性化的“菜譜”,再到實(shí)現(xiàn)客戶的自助“炒菜 ”……正是創(chuàng)新的思維讓網(wǎng)絡(luò)的運(yùn)維越來(lái)越高效。

授人以魚(yú)不如授人以漁

進(jìn)入公司兩年后,我進(jìn)入了一個(gè)新項(xiàng)目組,做iSStar(華為網(wǎng)管的智能運(yùn)維平臺(tái)),解決用戶日常運(yùn)維的自動(dòng)化問(wèn)題。

為什么要自動(dòng)化?以前運(yùn)營(yíng)商需要定制開(kāi)發(fā)網(wǎng)絡(luò)運(yùn)維模式,效率低,成本高,運(yùn)維壓力越來(lái)越大,簡(jiǎn)直是累覺(jué)不愛(ài),隨著網(wǎng)絡(luò)規(guī)模的增長(zhǎng),這顯然不是長(zhǎng)久之計(jì)。iSStar正是我司結(jié)合業(yè)界的實(shí)踐,自主打造的“漁之道”。

既然是一個(gè)可編程平臺(tái),iSStar就要有自己的語(yǔ)言和編譯器。但是大家對(duì)編譯器都是一知半解,竟然沒(méi)有人主動(dòng)舉手承擔(dān)。按常理不選編譯器是最優(yōu)選擇,可以避開(kāi)未知的風(fēng)險(xiǎn),但是沒(méi)有挑戰(zhàn),怎么會(huì)有進(jìn)步?“讓我來(lái)試一試吧!”憑著一股初生牛犢不怕虎的勇氣,我舉手承擔(dān)了最為復(fù)雜和核心的語(yǔ)言和編譯器模塊。

Python作為iSStar的解釋器是否合適?怎么基于Python設(shè)計(jì)一個(gè)新的語(yǔ)言?對(duì)Python不熟悉怎么辦?設(shè)計(jì)一個(gè)語(yǔ)言對(duì)作為新人的我來(lái)說(shuō),是巨大的挑戰(zhàn)。我用了最笨的方法,一個(gè)月將Python所有的標(biāo)準(zhǔn)庫(kù)的代碼敲一遍,通過(guò)這個(gè)方法快速掌握了Python的語(yǔ)法和所有標(biāo)準(zhǔn)庫(kù)的用法。通過(guò)反復(fù)選型PK,產(chǎn)品最終通過(guò)了語(yǔ)言基于Python做擴(kuò)展的方案。對(duì)Python語(yǔ)法做了簡(jiǎn)化包裝后,自己設(shè)計(jì)了第一個(gè)語(yǔ)言(HSL)頑強(qiáng)地誕生了。

當(dāng)寫(xiě)作的第一個(gè)腳本通過(guò)我開(kāi)發(fā)的編譯器編譯運(yùn)行起來(lái),我激動(dòng)的心情久久不能平復(fù)。這段經(jīng)歷讓自己z明白,學(xué)習(xí)沒(méi)有捷徑,踏踏實(shí)實(shí)去做才是最有效的方法。

在iSStar項(xiàng)目后期,我又發(fā)現(xiàn)了一個(gè)問(wèn)題:隨著業(yè)務(wù)場(chǎng)景的擴(kuò)充,客戶提出的大量接口需求,但是接口要能夠在iSStar的Python環(huán)境中被調(diào)用,需要手工編寫(xiě)大量相似且無(wú)意義的代碼做封裝。這就有點(diǎn)像充電器和電源插座不匹配,每次都得手工裝上轉(zhuǎn)接頭才能通上電,效率低而且質(zhì)量不高。而且因?yàn)榛煊昧硕喾N技術(shù),定位問(wèn)題就像盲人摸象。面對(duì)巨大的交付壓力,大家有種被卡脖子的感覺(jué),猶如行進(jìn)在一個(gè)看不到終點(diǎn)的馬拉松。

因?yàn)橛羞^(guò)編譯器的經(jīng)驗(yàn),我的腦中浮現(xiàn)一個(gè)點(diǎn)子:能不能把裝“轉(zhuǎn)接頭”這個(gè)動(dòng)作自動(dòng)化?既然IDL形式的接口已經(jīng)有工具可以編譯為C++/Java代碼,那么也可以編譯為Python代碼,利用編譯器來(lái)自動(dòng)做轉(zhuǎn)換的想法我在腦中萌生。

沒(méi)有現(xiàn)成工具就自己開(kāi)發(fā),經(jīng)過(guò)大半個(gè)月的攻關(guān),第一個(gè)編譯器工具在自己手中誕生了,從此IDL->Python的轉(zhuǎn)換徹底實(shí)現(xiàn)了自動(dòng)化,在iSStar中提供接口變得簡(jiǎn)單,開(kāi)發(fā)效率大幅提升,原先3天才能交付1個(gè)接口到現(xiàn)在1天可以批量交付5個(gè)以上接口,開(kāi)發(fā)過(guò)程從如履薄冰到從容自若。這段經(jīng)歷讓自己體會(huì)到程序員要敢于突破,有創(chuàng)新才能進(jìn)步。

忍無(wú)可忍則無(wú)需再忍

做完這個(gè)項(xiàng)目后,我進(jìn)入CME(網(wǎng)管的配置管理專家系統(tǒng))項(xiàng)目。此時(shí),我的角色發(fā)生了變化,擔(dān)任了PL,不但要負(fù)責(zé)技術(shù),而且承擔(dān)了項(xiàng)目組的整體業(yè)務(wù)交付和人員管理,對(duì)于長(zhǎng)期從事技術(shù)工作的我,又是一個(gè)重大的挑戰(zhàn)。

CME大量使用了數(shù)據(jù)庫(kù)能力,在CME的這段時(shí)間,數(shù)據(jù)庫(kù)性能問(wèn)題的爆發(fā)讓我頭疼不已,經(jīng)常運(yùn)行到一半系統(tǒng)就在某處突然掛死,前功盡棄的挫敗感油然而生,數(shù)據(jù)庫(kù)性能猶如揮之不去的夢(mèng)魘。

意識(shí)到解決數(shù)據(jù)庫(kù)依賴的緊迫性,我開(kāi)始萌生“將計(jì)算過(guò)程脫離數(shù)據(jù)庫(kù)”的想法,因?yàn)閽焖绬?wèn)題通常是由于數(shù)據(jù)集的超大和執(zhí)行計(jì)劃的不合理導(dǎo)致的。這就像大城市的交通系統(tǒng),由于車(chē)流量太大,分流不合理,就會(huì)導(dǎo)致交通癱瘓。

按照大數(shù)據(jù)處理方法,我們可以對(duì)計(jì)算和數(shù)據(jù)做分布式處理,于是我找到“交通堵塞”最嚴(yán)重的一個(gè)點(diǎn)作為切入點(diǎn),用編譯器將其轉(zhuǎn)換為Python代碼,然后對(duì)數(shù)據(jù)分片交給Python解釋器執(zhí)行。這就類似于建立地鐵/高架/隧道等多層次的立體交通系統(tǒng),對(duì)車(chē)輛進(jìn)行合理的疏導(dǎo),保證交通的順暢。

雖然過(guò)程困難重重,但是我沒(méi)有放棄,一步一個(gè)腳印去做。逐漸,功能穩(wěn)定了,煩人的掛死問(wèn)題也隨之消失了。這段經(jīng)歷讓自己體會(huì)到程序員不但要善于技術(shù),而且要善于發(fā)現(xiàn),更要耐得住寂寞。

一封郵件搞定腳本

轉(zhuǎn)眼到了2017年,云化之勢(shì)浩浩蕩蕩。盡管云CME號(hào)稱上線了,卻只有一個(gè)功能:LTE新建。

操作界面很像單機(jī)版,但因?yàn)樾枰~外登錄網(wǎng)頁(yè)、導(dǎo)入基站小區(qū)模板、以及手動(dòng)下載生成的腳本,操作步驟比單機(jī)版要多十幾步,并且因?yàn)槭蔷W(wǎng)頁(yè)交互,響應(yīng)速度比單機(jī)版要慢,用戶體驗(yàn)反而變差了,甚至被調(diào)侃為“云CME是換了Web殼的單機(jī)CME”。

CME的服務(wù)代表葉小華當(dāng)時(shí)提出,能不能讓用戶僅通過(guò)郵件就能夠使用云工具,免登陸網(wǎng)站,免界面操作,免下載附件,通過(guò)一個(gè)定制腳本一鍵式完成配置腳本的制作?

怎么做服務(wù)要求的這份“大餐”?這一下把我們難住了,開(kāi)放可編程的訴求如何在云CME落地?CME現(xiàn)有的接口都是和場(chǎng)景/表格綁定了,接口如何提供?業(yè)務(wù)模塊間的數(shù)據(jù)完全不統(tǒng)一,數(shù)據(jù)如何交換?每一點(diǎn)都是巨大的挑戰(zhàn),面對(duì)這些困難,我有點(diǎn)巧婦難為無(wú)米之炊的感覺(jué)。

是采用之前iSStar的老路,還是采用新模式?這是我做過(guò)的最難的決定?;诙嗄暝贑ME的工作經(jīng)驗(yàn),我發(fā)現(xiàn)CME的業(yè)務(wù)特點(diǎn)是輕流程、重?cái)?shù)據(jù),和iSStar輕數(shù)據(jù)、重流程的業(yè)務(wù)模式正好相反,于是提出“大食代模式”:將CME現(xiàn)有的功能定義為“攤位”,將每個(gè)功能的輸入數(shù)據(jù)建模稱之為“食材”,可編程平臺(tái)提供基于模型的數(shù)據(jù)標(biāo)準(zhǔn)操作接口,我們稱之為“加工方法”,用戶通過(guò)編寫(xiě)面向數(shù)據(jù)的算法腳本,輸出數(shù)據(jù)(菜單:包括食材和加工方法),然后由平臺(tái)依次派發(fā)各個(gè)攤位,完成食材的加工,最后平臺(tái)完成上菜。

有了設(shè)計(jì)思路后,我們馬不停蹄地啟動(dòng)執(zhí)行器及API的設(shè)計(jì)和開(kāi)發(fā),然后特性迭代上線,完成第一個(gè)APP的開(kāi)發(fā),指導(dǎo)服務(wù)完成第一個(gè)局點(diǎn)腳本的交付。

一年不到時(shí)間,二次開(kāi)發(fā)平臺(tái)飛速發(fā)展,實(shí)現(xiàn)全球9大數(shù)據(jù)中心部署,從0到累計(jì)實(shí)現(xiàn)60萬(wàn)+站腳本制作,全球開(kāi)發(fā)人員從0到300+,對(duì)服務(wù)人員效率提升30%以上,作業(yè)正確率接近100%,真正實(shí)現(xiàn)了工具降成本快速變現(xiàn),把工具真正變成生產(chǎn)力,同時(shí)有效地支撐了服務(wù)轉(zhuǎn)型,讓服務(wù)真正成為我們產(chǎn)品的SRE,實(shí)現(xiàn)項(xiàng)目的敏捷交付。

現(xiàn)在,只需要發(fā)封郵件,平臺(tái)就能夠自動(dòng)處理并返回對(duì)應(yīng)腳本,操作步驟大大簡(jiǎn)化了。對(duì)比單機(jī)版,云CME在用戶體驗(yàn)上總算有了一點(diǎn)點(diǎn)微弱的優(yōu)勢(shì)。

隨后,我們與一線達(dá)成一致決定,往后所有上云功能都必須做到“一封郵件搞定腳本”。正是這條規(guī)定,讓我們從最開(kāi)始就聚焦于功能的自動(dòng)化,避免了把精力投入到非核心功能的開(kāi)發(fā)。

 

 

回顧這15年的歷程,個(gè)人能夠隨著公司和產(chǎn)品一起成長(zhǎng),是我的榮幸。不忘初心,砥礪前行,在技術(shù)的路上不管是順境或是逆境,都要保持一顆好奇心和專注力,困難和挑戰(zhàn)是倒逼我們創(chuàng)新的動(dòng)力源泉,希望在未來(lái)為OSS的持續(xù)演進(jìn)貢獻(xiàn)自己的力量。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉