我來悟微服務(1)-夜觀天象

daxuesheng發表於2021-09-09

   一天最愜意的時光莫過於晚上坐在陽臺裡,遠望星空。雖然是極晚了,雲朵仍然不忘旅行,逢著晴朗天氣,還能遇到星星出沒。

      星空之下,小區的東邊,有一條大道直通南北,大道兩旁的照明燈遠遠看去,像是閃爍的星星。正如郭沫若所說:遠遠的街燈明瞭,好像閃著無數的明星。天上的明星現了,好像點著無數的街燈。

      看到這迷幻的情景,我又想到凱文凱利的<<失控>>,裡面以工蜂和螞蟻的社群為例講述了現在或未來社會無中心分散式得協同生活。我之前並未看完,但此本書面向未來,具有超前思想,很適合人工智慧,分散式等擴充套件思維。

      目前火熱的雲端計算也是借鑑了自然。道法自然。生於斯,長於斯,成長於斯。就連最基礎的軟體工程,也是取決於建築行業。

      愛思考的人腦海總是天馬星空,如沒有記載,很快將會遺失到九宵雲外。

任務排程

      軟體中的各種定時,延時作業是否類似於車來車往的十字路口,紅綠燈的定時切換現象?擴充套件思維,車流人流類似任務,紅綠燈像是個帶狀態的定時器,車道類似執行緒。

     在同一個十字路口,車道的總數是固定的,他們是前進還是停止是觀看對應的交通燈狀態來自主決定。你如果不想出事故,一般都會遵守交通規約的。一般軟體裡面是時間輪詢,主動去觸發任務,和現實世界人流觀看交通燈決策是相反的。這兩種哪種更高呢?在設計任務排程時,是否可以考慮任務根據排程系統的時間狀態來自行決定執行?這彷彿是一種待提煉的設計模式。有待開拓。

      在交通燈故障或車流量過載時,一般需要交警或輔警進行交通指揮,這類似一種補償機制。也類似是排程中心過載時備用方案。軟體設計中,我們要思考這種備用麼?

     學而不思則罔,思而不學則殆。

高併發

     大家對春運的人流量都有很深的印象。單個點要進站的有很多,同時進去不現實。這裡就需要分批排隊機制,延長護欄機制,茶水室優先進入機制。

分批排隊機制確保按車次有序分批進入,

延長護欄機制,一到春運,護欄就格外的長,這樣也有好處,不會把流量堵到一個點,分散延長。

茶水室類似為付錢或其他人士提供優先服務支援。

仔細想想,高併發,不就是負載均衡分流,驗證碼或拖拽驗證等機制延長操作時間,某些關鍵業務保持優先順序。其他業務可以非同步。

設計思想來源於生活,高於生活。

微服務閘道器

說到閘道器對服務的監控,限流,熔斷,異常重試等操作,你會不會想起十字路口的攝像頭,大橋,保險絲等?服務的隔離,是不是想起了集裝箱。最著名的容器docker更是以集裝箱距離。我們離生活如此之近,離程式碼如此之遠。

人法地,地法天,天法道,道法自然.



作者:範存威
連結:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4692/viewspace-2820017/,如需轉載,請註明出處,否則將追究法律責任。

相關文章