校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 為啥Redis使用pipelining會更快

為啥Redis使用pipelining會更快

熱門標(biāo)簽:高碑店市地圖標(biāo)注app 一個(gè)地圖標(biāo)注多少錢 南京手機(jī)外呼系統(tǒng)廠家 臺灣電銷 廊坊外呼系統(tǒng)在哪買 b2b外呼系統(tǒng) 400電話辦理的口碑 四川穩(wěn)定外呼系統(tǒng)軟件 地圖標(biāo)注工廠入駐

為啥Redis使用pipelining會更快?

這是一個(gè)很考究細(xì)節(jié)的問題,大部分人都會說:因?yàn)闇p少了網(wǎng)絡(luò)開銷,那么,看如下例子:

import time

import redis

client = redis.Redis(decode_responses=True)
count = 10000


def no_pipelining():
  for i in range(count):
    client.set("test:nopp:{}".format(i), i, ex=100)


def with_pipelining():
  pp = client.pipeline()

  for i in range(count):
    pp.set("test:withpp:{}".format(i), i, ex=100)

  pp.execute()


if __name__ == "__main__":
  start = time.time()
  no_pipelining()
  mid = time.time()
  with_pipelining()
  end = time.time()

  print("no_pipelining: {} seconds; with_pipelining: {} seconds".format(mid - start, end - mid))

為什么執(zhí)行結(jié)果相差如此之大呢?

$ python test.py
no_pipelining: 2.3809118270874023 seconds; with_pipelining: 0.4370129108428955 seconds

因?yàn)檫@是連接本地的redis,所以網(wǎng)絡(luò)開銷非常小,當(dāng)然,這里仍然有一部分是網(wǎng)絡(luò)開銷影響,可是除此之外是否還有其它影響因素呢? 答案是有,比如OS進(jìn)程調(diào)度,當(dāng)不使用管道時(shí),Redis處理每個(gè)命令之間是有時(shí)間空隙的,因此OS很有可能會將Redis進(jìn)程轉(zhuǎn)換為sleep狀態(tài), 然后運(yùn)行其它程序,而使用pipelining時(shí),可以提高CPU利用率,Redis空閑的時(shí)間沒有那么多,因此,這也是pipelining速度會更快的 重要原因之一。

ref:

https://redis.io/topics/pipelining

到此這篇關(guān)于為啥Redis使用pipelining會更快的文章就介紹到這了,更多相關(guān)Redis使用pipelining快內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Redis不是一直號稱單線程效率也很高嗎,為什么又采用多線程了?
  • redis單線程快的原因和原理
  • Redis為什么快如何實(shí)現(xiàn)高可用及持久化
  • Redis憑啥可以這么快
  • Redis高效率原因及數(shù)據(jù)結(jié)構(gòu)分析

標(biāo)簽:河源 甘南 泰州 定州 拉薩 南寧 伊春 畢節(jié)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《為啥Redis使用pipelining會更快》,本文關(guān)鍵詞  為啥,Redis,使用,pipelining,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《為啥Redis使用pipelining會更快》相關(guān)的同類信息!
  • 本頁收集關(guān)于為啥Redis使用pipelining會更快的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 石渠县| 揭东县| 龙泉市| 武山县| 滨海县| 盐津县| 庆城县| 贡嘎县| 江陵县| 铅山县| 齐齐哈尔市| 溧阳市| 固阳县| 蕉岭县| 鄂尔多斯市| 嘉峪关市| 乌恰县| 大洼县| 萝北县| 通山县| 紫金县| 天柱县| 平昌县| 临武县| 祥云县| 连平县| 泰宁县| 任丘市| 彝良县| 金寨县| 宁夏| 县级市| 洪江市| 凤台县| 开远市| 凤冈县| 英德市| 长泰县| 星子县| 大安市| 宜兴市|