最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Redis事物面試總結(jié),第一次分享說(shuō)的不好大家看文字吧

2023-02-16 00:00 作者:咸菜炒蝦  | 我要投稿

Redis事物和我們平時(shí)理解的關(guān)系型數(shù)據(jù)庫(kù)是不一樣的,Redis事物在運(yùn)行錯(cuò)誤的情況下,除了執(zhí)行過(guò)程中運(yùn)行錯(cuò)誤的命令之外,其他命令都可以正常執(zhí)行。Redis事物是不支持回滾的。不滿足原子操作,也就是說(shuō)在執(zhí)行多個(gè)命令時(shí)可以被其他命令插入。

Redis事物存在一些缺陷:

  1. 不滿足原子性;
  2. 雖然Redis事物可以將多個(gè)請(qǐng)求命令打包發(fā)給Redis服務(wù)器,但是發(fā)送的每個(gè)命令請(qǐng)求都會(huì)與Redis服務(wù)器進(jìn)行網(wǎng)絡(luò)交互,所以還是很浪費(fèi)資源的。

所以,在我們開(kāi)發(fā)過(guò)程中基本上很少使用Redis事物。

如何解決 Redis 事務(wù)的缺陷?

Redis 從 2.6 版本開(kāi)始支持執(zhí)行 Lua 腳本,它和Redis事物很相似,利用Lua腳本可以批量執(zhí)行多個(gè)Redis命令,這些命令會(huì)被提交到Redis服務(wù)器上一次性執(zhí)行完成,大大的減小了網(wǎng)絡(luò)開(kāi)銷。

如果Lua腳本執(zhí)行過(guò)程中出錯(cuò)結(jié)束,那么出錯(cuò)之后的命令是不會(huì)被執(zhí)行的,并且出錯(cuò)之前的命令無(wú)法撤銷,所以Lua腳本不滿足原子性。

使用Lua腳本的好處:

  1. 減少網(wǎng)絡(luò)開(kāi)銷
  2. 原子操作:Redis將整個(gè)Lua腳本作為一個(gè)命令執(zhí)行,中間不會(huì)被其他命令插入。

面試加問(wèn):

Redis事物和管道有什么區(qū)別?

1、網(wǎng)絡(luò)開(kāi)銷

客戶端可以通過(guò)管道一次性地發(fā)送多個(gè)命令而不用等服務(wù)器的響應(yīng),等所有命令都執(zhí)行完之后再一次性地讀取響應(yīng),多條命令的網(wǎng)絡(luò)開(kāi)銷相當(dāng)于是一條命令的開(kāi)銷。但是需要注意的一點(diǎn)是,當(dāng)使用管道打包命令時(shí),Redis必須在處理完所有命令之前將結(jié)果緩存起來(lái),所以打包命令越多,消耗的緩存越多,所以使用時(shí)需要注意下。

Redis事物面試總結(jié),第一次分享說(shuō)的不好大家看文字吧的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
金沙县| 万源市| 清水县| 吉木乃县| 明星| 敦化市| 青浦区| 澎湖县| 望都县| 双鸭山市| 山丹县| 和平区| 金湖县| 吉林市| 铁岭市| 准格尔旗| 芒康县| 遵义市| 德庆县| 襄城县| 汝南县| 平遥县| 台中市| 定州市| 香河县| 尚义县| 鹤岗市| 宿迁市| 洪泽县| 大悟县| 五河县| 乌鲁木齐市| 神农架林区| 类乌齐县| 威信县| 肃南| 临泽县| 奈曼旗| 乡宁县| 荥阳市| 拜城县|