Python 並行 併發拾遺

2021-10-06 09:42:32 字數 978 閱讀 9540

同時做某些事情,可以互不干擾的同一時刻做幾件事情

並行:是一條高速路上的多條車道,每條車道上可能同時有車輛在跑,是同時發生的概念

同時做某些事情,但是乙個時間段內有事情要處理

併發:是眾多車輛在乙個時間內要通過路面的時間,比如下班時一大波人向食堂湧去,搶購時一大波請求向服務端湧去

1、佇列、緩衝區

打菜時排隊,先進先出,這個佇列就是緩衝區,如果女士優先的話還可以設定乙個優先佇列

queue 模組的類,queue、lifoqueue、priorityqueue

2、爭搶

打菜時誰搶到打菜視窗誰就先打,這裡就是一種鎖機制,爭搶也是乙個高併發解決方案,但是有一點不好,可能有人很長時間搶不到。

3、 預處理

將熱門的菜提前準備好,冷門的菜臨時做,這一種提前載入使用者需要的資料的思路,預處理思想,快取常用。

4、並行

太多人吃飯,可以開啟多個視窗,形成多個佇列並行打菜,成本上公升,就像日常通過購買更多伺服器,或多開程序、執行緒實現並行處理,解決併發,這是水平擴充套件的思想

注意

如果執行緒在單 cpu 上執行的話就不是並行處理了。

但是多數的伺服器都是多 cpu 的,服務的部署往往是多機的、分布式的,這都是並行處理

5、 提速

提到單個打菜視窗的打菜速度,即提高單個 cpu 的效能,或單個伺服器安裝更多的 cpu ,這是一種垂直擴充套件思想。

6、 訊息中介軟體

在食堂外部建立九曲迴腸的走廊。

在第一點提到的是在程式內部建立排隊,這裡的訊息佇列是在程式的外部。

常見的訊息中介軟體有 rabbitmq、activemq(apache)、rocketmq(阿里apache)、kafka

python 基本語法 拾遺

django 開發中一般見到的python 內部類,最多是在model 設計過程中。所謂內部類,就是在類內部定義的類,主要目的是為了更好的抽象現實世界。內部類的距離 汽車是個類,汽車的地盤,輪胎也可以抽象為類,將其定義到汽車類中,則形成了內部類,更好的描述汽車類,因為底盤,輪胎是汽車的一部分 一般不...

Python複習 拾遺 3

一維資料格式化及其處理 一維資料的表示 如果資料間有序,使用列表型別 for迴圈 無序使用集合 for迴圈 一維資料的儲存 空格分隔,不換行 缺點 資料中不能有空格 逗號分隔 缺點不能有英文逗號 所以使用文章不會出現的特殊符號 一維資料的處理 儲存檔案 列表或者集合 儲存檔案 列表或者集合 複習.s...

asp知識拾遺

最近做的乙個小 碰到了許多問題,能解決的都解決了,還有的沒辦法就找了替代的解決辦法.下面收集一下 1 在選擇了一系列的checkbox後的提交表單提交後,會獲取到name1,逗號,空格,name2,逗號,空格,結果,系統需要獲取這些值,我用了以下 實現.uname request.form user...