幾種IO模型深入淺出的理解

2021-08-11 05:13:29 字數 906 閱讀 9461

io 多路復用是5種i/o模型中的第3種,對各種模型講個故事,描述下區別:

故事情節為:老李去買火車票,三天後買到一張退票。參演人員(老李,黃牛,售票員,快遞員),往返車站耗費1小時。

1.阻塞i/o模型

老李去火車站買票,排隊三天買到一張退票。

耗費:在車站吃喝拉撒睡 3天,其他事一件沒乾。

2.非阻塞i/o模型

老李去火車站買票,隔12小時去火車站問有沒有退票,三天後買到一張票。

耗費:往返車站6次,路上6小時,其他時間做了好多事。

3.i/o復用模型

1.select/poll

老李去火車站買票,委託黃牛,然後每隔6小時**黃牛詢問,黃牛三天內買到票,然後老李去火車站交錢領票。

耗費:往返車站2次,路上2小時,黃牛手續費100元,打**17次

2.epoll

老李去火車站買票,委託黃牛,黃牛買到後即通知老李去領,然後老李去火車站交錢領票。

耗費:往返車站2次,路上2小時,黃牛手續費100元,無需打**

4.訊號驅動i/o模型

老李去火車站買票,給售票員留下**,有票後,售票員**通知老李,然後老李去火車站交錢領票。

耗費:往返車站2次,路上2小時,免黃牛費100元,無需打**

5.非同步i/o模型

老李去火車站買票,給售票員留下**,有票後,售票員**通知老李並快遞送票上門。

耗費:往返車站1次,路上1小時,免黃牛費100元,無需打**

1同2的區別是:自己輪詢

2同3的區別是:委託黃牛

3同4的區別是:**代替黃牛

4同5的區別是:**通知是自取還是送票上門

深入淺出理解索引

一 深入淺出理解索引結構 實際上,您可以把索引理解為一種特殊的目錄。sql server提供了兩種索引 聚集索引 clustered index,也稱聚類索引 簇集索引 和非聚集索引 nonclustered index,也稱非聚類索引 非簇集索引 下面,我們舉例來說明一下聚集索引和非聚集索引的區別...

深入淺出理解索引

一 深入淺出理解索引結構 實際上,您可以把索引理解為一種特殊的目錄。sql server提供了兩種索引 聚集索引 clustered index,也稱聚類索引 簇集索引 和非聚集索引 nonclustered index,也稱非聚類索引 非簇集索引 下面,我們舉例來說明一下聚集索引和非聚集索引的區別...

深入淺出理解 COOKIE MAPPING

在網際網路中,我們有著許多標識唯一使用者的技術手段,其中,最為常見的就是 cookie 了 什麼是cookie請參看 分析中的cookie 簡單的多,cookie具備幾個特徵 正因為cookie具備上述幾個特徵,也就衍生出cookie在使用上的一些特點了,我們以dsp.com 廣告購買平台 adx....