不用傻傻的分不清併發和異歩的關係了

學習計算機語言就是一個不斷的明白自己錯誤的一個過程

 併發和異歩是兩個非常重要的計算機概念,在學習計算機語言的初期,根本分不清併發和異歩到底有什麼區別。因爲在很多實際的例子中,講併發的時候,使用了異歩這個概念,舉一個異歩的例子,使用的是併發的概念。

併發簡單來說是研究一個程序(響應)如何拆分成多線程或者多進程來進行運行的方法。

異歩簡單來說是研究多個程序(響應)同時運行並按照不同的隊列方式運行的方法。而每個程序(響應)可以再進行併發式運行。

相同的目的都是爲了快速反應的方法,但使用的範圍和效果完全不是一會事。

異歩的產生是源於爲了滿足大量的對接口的請求的響應,因而對大量請求如何組隊(隊列)加快響應的技術,主要用於接口的多請求應用,典型的就是web應用。核心就是一個隊列技術。

併發是解決一個程序需要耗費很多的cpu和內存資源運行的程序,多是指大數據處理和後臺計算上,所以基本上對爲web的請求和響應這個過程根本不會用上(不是絕對,有一種會用上,以後再說)。核心是work的拆分技術。

所以如果是web工程師或者web app應用,只需要學習異歩這個技術就好了,併發基本上用不到,隊列(MQ)技術反而是更有用一些,而不是併發。

如果是屬於大數據處理和運算類的,儘量別去想什麼異歩,好好研究併發技術就好了,異歩真的用的不多。

如果是想弄分佈計算的,以上東西都是胡說八道的,兩種技術都要要。

另外提一下,宏架構和微架構,沒有隊列技術微架構就是一堆沙子。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章