日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

互联网技术演进了解

發布時間:2023/12/14 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 互联网技术演进了解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

  • 業務復雜性
    • 初創期
    • 發展期
      • 堆功能
      • 優化
    • 競爭期
    • 成熟期
  • 用戶規模
    • 性能
    • 可用性
  • 量變到質變

互聯網業務千差萬別,但由于它們具有“規模決定一切”的相同點,其發展路徑也基本上是一致的。互聯網業務發展一般分為幾個時期:初創期、發展期、競爭期、成熟期。
不同時期的差別主要體現在兩個方面:復雜性、用戶規模

業務復雜性

互聯網業務發展第一個主要方向就是業務越來越復雜。

初創期

互聯網業務剛開始一般都是一個創新的業務點,這個業務點的重點不在于完善,而在于創新,只有創新才能吸引用戶;而且因為其新的特點,其實一開始是不可能很完善的。只有隨著越來越多的用戶的使用,通過快速迭代試錯、用戶的反饋等手段,不斷地在實踐中去完善,才能繼續創新。

初創期的業務對技術就一個要求:,但這個時候卻又是創業團隊最弱小的時期,可能就幾個技術人員,所以這個時候十八般武藝都需要用上:能買就買,有開源的就用開源的。

發展期

當業務推出后經過市場驗證如果是可行的,則吸引的用戶就會越來越多,此時原來不完善的業務就進入了一個快速發展的時期。業務快速發展時期的主要目的是將原來不完善的業務逐漸完善,因此會有越來越多的新功能不斷地加入到系統中。對于絕大部分技術團隊來說,這個階段技術的核心工作是快速地實現各種需求,只有這樣才能滿足業務發展的需要。

堆功能

業務進入快速發展期的初期,此時團隊規模也不大,業務需求又很緊,最快實現業務需求的方式是繼續在原有的系統里面不斷地增加新的功能,重構、優化、架構等方面的工作即使想做,也會受制于人力和業務發展的壓力而放在一邊。

優化

隨著功能越來越多,系統開始變得越來越復雜,后面繼續堆功能會感到越來越吃力,速度越來越慢,如何解決這個問題,一般會分為兩派:一派是優化派,一派是架構派。

  • 優化期

優化的核心思想是將現有的系統優化。例如,采用重構、分層、優化某個 MySQL 查詢語句,將機械硬盤換成 SSD,將數據庫從 MySQL 換成 Oracle,增加 Memcache 緩存等。優化派的優勢是對系統改動較小,優化可以比較快速地實施;缺點就是可能過不了多久,系統又撐不住了。

  • 架構期

經過優化期后,如果業務能夠繼續發展,慢慢就會發現優化也頂不住了,畢竟再怎么優化,系統的能力總是有極限的。此時已經沒有別的選擇,只能進行架構調整,主要是將原來的大系統拆分為多個互相配合的小系統。例如,將購物系統拆分為登錄認證子系統、訂單系統、查詢系統、分析系統等。架構派的優勢是一次調整可以支撐比較長期的業務發展,缺點是動作較大、耗時較長,對業務的發展影響也比較大。

競爭期

當競爭對手加入后,大家互相學習和模仿,業務更加完善,也不斷有新的業務創新出來,而且由于競爭的壓力,對技術的要求是更上一層樓了。
新業務的創新結果是新的系統會更多,同時,原有的系統也會拆得越來越多。兩者合力的一個典型后果就是系統數量在原來的基礎上又增加了很多。架構拆分后帶來的美好時光又開始慢慢消逝,技術工作又開始進入了慢的狀態,這又是怎么回事呢?
原來系統數量越來越多,到了一個臨界點后就產生了質變,即系統數量的量變帶來了技術工作的質變。主要體現在下面幾個方面:

  • 重復造輪子
    系統越來越多,各系統相似的工作越來越多。例如,每個系統都有存儲,都要用緩存,都要用數據庫。
  • 系統交互一團亂麻
    系統越來越多,各系統的交互關系變成了網狀。

針對這個時期業務變化帶來的問題,技術工作主要的解決手段有:

  • 平臺化

目的在于解決“重復造輪子”的問題。

存儲平臺化:淘寶的 TFS、京東 JFS。

數據庫平臺化:百度的 DBProxy、淘寶 TDDL。

緩存平臺化:Twitter 的 Twemproxy,豆瓣的 BeansDB、騰訊 TTC。

  • 服務化

目的在于解決系統交互的問題,常見的做法是通過消息隊列來完成系統間的異步通知,通過服務框架來完成系統間的同步調用。

消息隊列:淘寶的 Notify、MetaQ,開源的 Kafka、ActiveMQ 等。

服務框架:Facebook 的 thrift、當當網的 Dubbox、淘寶的 HSF 等。

成熟期

當企業熬過競爭期,成為了行業的領頭羊,或者整個行業整體上已經處于比較成熟的階段,市場地位已經比較牢固后,業務創新的機會已經不大,競爭壓力也沒有那么激烈,此時求快求新已經沒有很大空間,業務上開始轉向為求精:我們的響應時間是否比競爭對手快?我們的用戶體驗是否比競爭對手好?我們的成本是否比競爭對手低……

此時技術上其實也基本進入了成熟期,該拆的也拆了,該平臺化的也平臺化了,技術上能做的大動作其實也不多了,更多的是進行優化。這個時候的技術優化沒有固定的套路,只能按照競爭的要求,找出自己的弱項,然后逐項優化。在逐項優化時,可以采取之前各個時期采用的手段。

用戶規模

互聯網業務的發展第二個主要方向就是用戶量越來越大。互聯網業務發展的幾個階段典型的差別就是用戶量的差別,用戶量隨著業務的發展而越來越大。

用戶量增大對技術的影響主要體現在兩個方面:性能要求越來越高、可用性要求越來越高。

性能

用戶量增大給技術帶來的第一個挑戰就是性能要求越來越高。

以互聯網企業最常用的 MySQL 為例,再簡單的查詢,再高的硬件配置,單臺 MySQL 機器支撐的 TPS 和 QPS 最高也就是萬級,低的可能是幾千,高的也不過幾萬。當用戶量增長后,必然要考慮使用多臺 MySQL,從一臺 MySQL 到多臺 MySQL 不是簡單的數量的增加,而是本質上的改變,即原來集中式的存儲變為了分布式的存儲,分布式 MySQL 要考慮分庫分表、讀寫分離、復制、同步等很多問題。

可用性

用戶量增大對技術帶來的第二個挑戰就是可用性要求越來越高。

當你有 1 萬個用戶的時候,宕機 1 小時可能也沒有很大的影響;但當你有了 100 萬用戶的時候,宕機 10 分鐘,投訴電話估計就被打爆了,這些用戶再到朋友圈抱怨一下你的系統有多爛,很可能你就不會再有機會發展下一個 100 萬用戶了。
除了口碑的影響,可用性對收入的影響也會隨著用戶量增大而增大。1 萬用戶宕機 1 小時,你可能才損失了幾千元;100 萬用戶宕機 10 分鐘,損失可能就是幾十萬元了。

量變到質變

通過前面的分析,我們可以看到互聯網業務驅動技術發展的兩大主要因素是復雜性和用戶規模,而這兩個因素的本質其實都是量變帶來質變。

究竟用戶規模發展到什么階段才會由量變帶來質變,雖然不同的業務有所差別,但基本上可以按照下面這個模型去衡量:

應對業務質變帶來的技術壓力,不同時期有不同的處理方式,但不管什么樣的方式,其核心目標都是為了滿足業務快的要求,當發現你的業務快不起來的時候,其實就是技術的水平已經跟不上業務發展的需要了,技術變革和發展的時候就到了。
更好的做法是在問題還沒有真正暴露出來就能夠根據趨勢預測下一個轉折點,提前做好技術上的準備。

--------來源《極客課程》? 學習摘要

總結

以上是生活随笔為你收集整理的互联网技术演进了解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。