又拍云张聪谈安全、HTTPS、自定义、CDN的未来趋势
近期,EGO對又拍云研發構架師張聰進行了專訪,在專訪中張聰闡述了他對CDN未來獨特的見解,聽得小拍崇拜不已,趕忙為大家搬來采訪稿,大家快來跟小拍一起跟隨張聰了解一下CDN的未來吧!
\\專注于場景化CDN業務的又拍云,自創辦以來,業務、團隊一直在快速擴張。在這個過程中,又拍云完成了技術選型、替換、迭代優化等一系列工作,既有國內較早引進ngx_lua的壯舉,也難以避免地有踩過一些坑。EGO特別采訪了又拍云架構師張聰,聽他聊聊又拍云在基礎架構方面的那些事兒,也聊聊關于CDN未來又有哪些可能。
\\下面是經過編輯整理的采訪內容:
\\EGO:先簡單介紹一下自己吧?
\\\張聰:我4年前加入又拍云,之后一直從事CDN領域的工作,非常有幸經歷了又拍云CDN從早期起步比較簡陋、用戶量比較少的階段,到今天業務量不斷擴大、技術體系不斷變革完善的整個發展過程。
\\最早團隊小的時候,什么事都需要自己去做,像寫代碼、上線、運維等都得一個人搞定,現在CDN團隊不斷擴大,除了技術之外,我也開始負責一些管理團隊的工作,雖然中間也遇到了很多問題,但也收獲了很多經驗,也是跟著公司的變大不斷去適應不同的挑戰。
\\\引入ngx_lua、二次開發、開源
\\EGO:能分享一下您在又拍云最有成就感的事嗎?
\\\張聰:公司成立以來,又拍云業務一直在不斷快速擴張,在這個從小變大的過程中,肯定需要對架構進行改造和升級,否則就無法承受業務的增長,所以我們曾面臨了一些技術選型的問題。
\\最早的時候,又拍云CDN用Nginx C模塊進行業務開發,但它的維護成本很大。我們作為一家創業公司,就想選擇開發盡可能方便、效率盡可能高的技術,經過多方考量之后,我們引入了ngx_lua項目。雖然當時ngx_lua(下圖)在國內沒那么普及,應用也還不是很廣泛,但我們覺得它非常符合我們的需求,就把它引入到了又拍云的CDN開發框架里了。
\\\\在創業公司,技術選型還是非常自由的,只要關鍵的核心技術人員能夠勝任某些新技術,公司一般也會支持這些新技術以及架構上的調整。
\\引入之后,其實也遇到過很多困難,因為ngx_lua在國內的使用不多,很多資料都偏向國外,國內甚至很少能夠找到交流的人,包括招人的時候,也很難招到相關的技術人員。我們是先自己摸索,慢慢地把線上系統從舊模式替換到新的模式。同時,我們也招了一些技術比較好的新人,從頭培養,這樣持續半年、一年之后,他們就能適應新的開發方式。中間也踩了很多坑、付出了很多代價,但當我們都跨過去后,整個CDN業務基礎的開發環境也就順利轉變過來了。
\\這樣,后續的開發、功能邏輯的迭代、維護都比之前輕松了非常多,而且在之后很多CDN功能的演進中,我們的效率都是比較高的。我們也總結出了很多文檔,能給新來的技術同學學習,同時,這個項目在國內也越來越流行了,我們也能跟國內同行有更多的交流。
\\現在回過頭來看,當初把ngx_lua引進公司,到后面CDN整個技術發展方向再到現在,這個選擇是非常正確的,整體加速了開發節奏、節省了維護負擔。對我們這樣CDN領域的創業公司來說,就需要在條件有限的情況下選擇一項更高效的技術。
\\這也是我印象比較深刻的一件事,對技術人而言,能經歷這種引入一個新技術,到自己慢慢掌握它,再到能跟同行去分享,是非常有意義的一件事。
\\\EGO:現在還在沿用ngx_lua嗎?
\\\張聰:還在用。但官方更新不一定能滿足我們現在的需求,所以我們會在這個基礎上加入自己的東西,做二次開發。
\\一開始我們只是拿來用,之后業務復雜了,我們就自己去修改它、完善它,跟它一起開發、發展。同時,我們也陸續在github上開源了幾個相關項目,回饋社區。
\\\EGO:能分享一下您踩過的坑、遇到的挑戰嗎?
\\\張聰:其實踩過很多坑,我講一個比較典型的。一般來講,CDN廠商承受的請求量、流量是非常大的,甚至遠比中型站點的流量來得大。
\\在這個基礎上,我們做一些功能的改造、新功能的發布的時候,就會面臨很大的挑戰。特別是功能的改造,就像是在一輛行駛得很快的車上換零件,業務量越大越有這種感覺,有些比較大的改造,往往還會涉及到系統的好幾層。因此,我們很難非常干凈利索地去做整個架構的調整、演進,只能是做好整個調整計劃,然后把整個計劃拆成N片,一點一點去做推進,就好像一個一個零件做替換一樣。
\\其中,最大的痛苦是,因為CDN上有很多緩存,如果更換某個“零件”的過程中一旦出了問題,代價就會非常大。因為除了錯誤本身之外,這些錯誤還會污染到CDN上一些緩存系統,相當于你除了要修復bug之外,還要把被污染的緩存部分挑出來、清理掉,這是非常讓人頭疼的一件事情。用數據開發做比喻,就相當于你的數據被污染了,你修復了bug之后,還要挑出那些被污染的數據,再把它們修復掉。這個過程是非常費心費力,也非常折騰。
\這是讓我印象比較深刻的踩過的坑。又拍云也制定了各種方案,采取了人為的、系統的各種措施來減少這種事情發生的可能,比如現在我們改造之前,就需要經過多個精心設計的流程、觀察各種數據指標,以保證過程的順利。
CDN服務的未來:安全、可定制化、自主配置
\\EGO:能分享一下CDN領域未來的趨勢嗎?
\\\張聰:第一,CDN可能不僅僅是簡單的加速,還需要有一些安全防護方面的功能。你的網站會不會被攻擊、別人是不是異常訪問你的網站,這些都是CDN安全領域的內容。特別是大客戶,他們對CDN安全方面的要求會非常高。同時,因為CDN是一張全國的網,它承受攻擊的能力肯定要比用戶的一個源站、單個節點的能力來得高,所以CDN上可以做好多安全相關的產品。
\\又拍云也在完善CDN安全方面的產品,在去年就推出了應用防火墻系統,一些簡單的注入攻擊、漏洞掃描,又拍云CDN網絡就能幫用戶擋掉這些風險。這是我覺得未來CDN發展的一個方向點。
\\第二,HTTPS是未來的趨勢。它的應用會越來越廣泛,CDN也就需要對此做出相應的變化。例如又拍云就推出了HTTPS CDN的動態證書調度,用戶在我們后臺簡單配置一下他的域名,然后上傳HTTPS證書,幾秒之后就能全國生效,我們的邊緣節點就會進行加載的證書、支持HTTPS訪問,非常方便。
\總結
以上是生活随笔為你收集整理的又拍云张聪谈安全、HTTPS、自定义、CDN的未来趋势的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: libuuid 安装
- 下一篇: NotificationListener