日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

同程旅行王晓波:如何改变 Redis 用不好的误区

發(fā)布時(shí)間:2025/3/16 数据库 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 同程旅行王晓波:如何改变 Redis 用不好的误区 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

王曉波?

同程旅行 機(jī)票事業(yè)群 CTO

讀完需要

4

分鐘

速讀僅需 2 分鐘

本章和大家分享一下同程鳳凰緩存系統(tǒng)在基于 Redis 方面的設(shè)計(jì)與實(shí)踐。如何改變 Redis 不好用的誤區(qū)

? 本文節(jié)選自中生代技術(shù)社區(qū)出品圖書(shū)《深入分布式緩存》

接上文《同程旅行王曉波:同程鳳凰緩存系統(tǒng)在基于 Redis 方面的設(shè)計(jì)與實(shí)踐(上篇)》

這樣的亂象一定是不可能繼續(xù)了,最少同程這樣的使用方式不可以再繼續(xù)了,使用者也開(kāi)始從喜歡到痛苦了。怎么辦?

這是一個(gè)很沉重的事:“一個(gè)被人用亂的系統(tǒng)就像一桌燒壞的菜,讓你重新回爐,還讓人叫好,是很困難的。”

關(guān)鍵是已經(jīng)用成這樣了,總不可能讓所有系統(tǒng)都停下來(lái),等待新系統(tǒng)上線并瞬間切換吧?這是個(gè)什么活?高速公路上換輪胎!

但問(wèn)題出現(xiàn)了總是要解決的,想了再想,論了再論,總結(jié)了以下幾點(diǎn):

  • 必須搭建完善的監(jiān)控系統(tǒng),在這之前要先預(yù)警,不能等到發(fā)生了,我們才發(fā)現(xiàn)問(wèn)題。

  • 控制和引導(dǎo) Redis 的使用,我們需要有自己研發(fā)的 Redis 客戶端,在使用時(shí)就開(kāi)始控制和引導(dǎo)。

  • Redis 的部分角色要改,將 Redis 由 storage 角色降低為 cache 角色。

  • Redis 的持久化方案要重新做,需要自己研發(fā)一個(gè)基于 Redis 協(xié)議的持久化方案,讓使用者可以把 Redis 當(dāng) DB 用。

  • Redis 的高可用要按照?qǐng)鼍胺珠_(kāi),根據(jù)不同的場(chǎng)景決定采用不同的高可用方案。

  • 留給開(kāi)發(fā)同學(xué)的時(shí)間并不多,必須兩個(gè)月的時(shí)間來(lái)完成這些事情。這其實(shí)還是很有挑戰(zhàn)的,考驗(yàn)開(kāi)發(fā)同學(xué)這個(gè)輪胎到底能不換下來(lái)的時(shí)候到了。同學(xué)們開(kāi)始研發(fā)我們自己的 Redis 緩存系統(tǒng),下面我們來(lái)看一下這個(gè)代號(hào)為鳳凰的緩存系統(tǒng)的第一版方案。

    首先是監(jiān)控系統(tǒng)

    原有的開(kāi)源 Redis 監(jiān)控從大面上講只一些監(jiān)控工具,不能算作一個(gè)完整的監(jiān)控系統(tǒng)。當(dāng)然這個(gè)監(jiān)控是全方位從客戶端開(kāi)始一直到返回?cái)?shù)據(jù)的全鏈路的監(jiān)控。

    其次是改造 Redis 客戶端

    廣泛使用的 Redis 客戶端有的太簡(jiǎn)單有的太重,總之不是我們想要的東西,比如,.Net 下的 BookSleeve 和 servicestack.Redis (同程還有一點(diǎn)老的.Net 開(kāi)發(fā)的應(yīng)用),前者已經(jīng)好久沒(méi)人維護(hù)了,后者直接收費(fèi)了。好吧,我們就開(kāi)發(fā)一個(gè)客戶端,然后督促全公司的研發(fā)用它來(lái)替換目前正在使用的客戶端。在這個(gè)客戶端里面,我們植入了日志記錄,記錄了代碼對(duì) Redis 的所有操作事件,例如耗時(shí)、key、value 大小、網(wǎng)絡(luò)斷開(kāi)等,我們將這些有問(wèn)題的事件在后臺(tái)進(jìn)行收集,由一個(gè)收集程序進(jìn)行分析和處理,同時(shí)取消了直接的 IP 端口連接方式,通過(guò)一個(gè)配置中心分配 IP 地址和端口。當(dāng) Redis 發(fā)生問(wèn)題并需要切換時(shí),直接在配置中心修改,由配置中心推送新的配置到客戶端,這樣就免去了 Redis 切換時(shí)需要運(yùn)維人員修改配置文件的麻煩。另外,把 Redis 的命令操作分拆成兩部分:安全的命令和不安全的命令。對(duì)于安全的命令可以直接使用,對(duì)于不安全的命令需要分析和審批后才能打開(kāi),這也是由配置中心控制的,這樣就解決了研發(fā)人員使用 Redis 時(shí)的規(guī)范問(wèn)題,并且將 Redis 定位為緩存角色,除非有特殊需求,否則一律以緩存角色對(duì)待。

    最后,對(duì) Redis 的部署方式也進(jìn)行了修改

    以前是 Keepalived 的方式,現(xiàn)在換成了主從+哨兵的模式。另外,我們自己實(shí)現(xiàn)了 Redis 的分片,如果業(yè)務(wù)需要申請(qǐng)大容量的 Redis 數(shù)據(jù)庫(kù),就會(huì)把 Redis 拆分成多片,通過(guò) Hash 算法均衡每片的大小,這樣的分片對(duì)應(yīng)用層也是無(wú)感知的。

    當(dāng)然重客戶端方式不好,并且我們要做的緩存不僅僅是單純的 Redis,我們還會(huì)做一個(gè) Redis 的 Proxy,提供統(tǒng)一的人口點(diǎn),Proxy 可以多份部署,客戶端無(wú)論連接的是哪個(gè) Proxy,都能取得完整的集群數(shù)據(jù),這樣就基本完成了按場(chǎng)景選擇不同的部署方式的問(wèn)題。

    這樣的一個(gè) Proxy 也解決了多種開(kāi)發(fā)語(yǔ)言的問(wèn)題,例如,運(yùn)維系統(tǒng)是使用 Python 開(kāi)發(fā)的,也需要用到 Redis,就可以直接連 Proxy,然后接到統(tǒng)一的 Redis 體系中來(lái)。做客戶端也好,做 Proxy 也好,不只是為代理請(qǐng)求而是為了統(tǒng)一治理 Redis 緩存的使用,不讓亂象出現(xiàn)。讓緩存在一個(gè)可管可控的場(chǎng)景下穩(wěn)定的運(yùn)維,讓開(kāi)發(fā)者可以安全并肆無(wú)忌憚繼續(xù)亂用 Redis,但這個(gè)“亂”是被虛擬化的亂,因?yàn)樗牡讓邮强梢灾卫淼摹O到y(tǒng)架構(gòu)如圖 15-1 所示

    圖 15-1 系統(tǒng)架構(gòu)圖

    當(dāng)然以上這些改造都需要在不影響業(yè)務(wù)的情況下進(jìn)行。實(shí)現(xiàn)這個(gè)其實(shí)還是有不小的挑戰(zhàn),特別是分片,將一個(gè) Redis 拆分成多個(gè),還能讓客戶端正確找到所需要的 key,這需要非常小心,因?yàn)樯杂胁簧?#xff0c;內(nèi)存的數(shù)據(jù)就全部消失了。在這段時(shí)間里,我們開(kāi)發(fā)了多種同步工具,幾乎把 Redis 的主從協(xié)議整個(gè)實(shí)現(xiàn)了一遍,終于可以將 Redis 平滑過(guò)度到新的模式上了。(未完待續(xù))

    想要加入中生代架構(gòu)群的小伙伴,請(qǐng)?zhí)砑尤汉匣锶?strong>大白的微信

    申請(qǐng)備注(姓名+公司+技術(shù)方向)才能通過(guò)哦!

    阿里技術(shù)精彩文章推薦

    往期推薦

    深度:揭秘阿里巴巴的客群畫(huà)像

    多隆:從工程師到阿里巴巴合伙人

    阿里技術(shù)專家楚衡:架構(gòu)制圖的工具與方法論

    螞蟻集團(tuán)技術(shù)專家山丘:性能優(yōu)化常見(jiàn)壓測(cè)模型及優(yōu)缺點(diǎn)

    阿里文娛技術(shù)專家戰(zhàn)獒: 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)詳解之What, Why, How?

    阿里專家馬飛翔:一文讀懂架構(gòu)整潔之道

    阿里專家常昊:新人如何上手項(xiàng)目管理?

    螞蟻集團(tuán)沈凋墨:Kubernetes-微內(nèi)核的分布式操作系統(tǒng)

    阿里合伙人范禹:常掛在阿里技術(shù)人嘴邊的四句土話

    阿里技術(shù)專家都鐸:一文搞懂技術(shù)債

    支付寶研究員兼OceanBase總架構(gòu)師楊傳輝:我在數(shù)據(jù)庫(kù)夢(mèng)之隊(duì)的十年成長(zhǎng)路

    阿里技術(shù)專家麒燁:修煉測(cè)試基本功

    阿里計(jì)算平臺(tái)掌門人賈揚(yáng)清:我對(duì)人工智能方向的一點(diǎn)淺見(jiàn)

    螞蟻資深算法專家周俊:從原理到落地,支付寶如何打造保護(hù)隱私的共享智能?

    阿里高級(jí)技術(shù)專家簫逸:如何畫(huà)好一張架構(gòu)圖?

    阿里高級(jí)技術(shù)專家張建飛:應(yīng)用架構(gòu)分離業(yè)務(wù)邏輯和技術(shù)細(xì)節(jié)之道

    螞蟻科技 Service Mesh 落地實(shí)踐與挑戰(zhàn) | GIAC 實(shí)錄

    阿里6年,我的技術(shù)蛻變之路!

    螞蟻集團(tuán)涵暢:再啟程,Service Mesh 前路雖長(zhǎng),尤可期許

    阿里P9專家右軍:大話軟件質(zhì)量穩(wěn)定性

    阿里合伙人程立:阿里15年,我撕掉了身上兩個(gè)標(biāo)簽

    阿里高工流生 | 云原生時(shí)代的 DevOps 之道

    阿里高級(jí)技術(shù)專家邱小俠:微服務(wù)架構(gòu)的理論基礎(chǔ) - 康威定律

    阿里P9專家右軍:以終為始的架構(gòu)設(shè)計(jì)

    阿里P8架構(gòu)師:淘寶技術(shù)架構(gòu)從1.0到4.0的架構(gòu)變遷!12頁(yè)P(yáng)PT詳解

    阿里技術(shù):如何畫(huà)出一張合格的技術(shù)架構(gòu)圖?

    螞蟻資深技術(shù)專家王旭:開(kāi)源項(xiàng)目是如何讓這個(gè)世界更安全的?

    阿里資深技術(shù)專家崮德:8 個(gè)影響我職業(yè)生涯的重要技能

    儒梟:我看技術(shù)人的成長(zhǎng)路徑

    阿里高級(jí)技術(shù)專家宋意:平凡人在阿里十年的成長(zhǎng)之旅

    阿里技術(shù)專家甘盤:淺談雙十一背后的支付寶LDC架構(gòu)和其CAP分析

    阿里技術(shù)專家光錐:億級(jí)長(zhǎng)連網(wǎng)關(guān)的云原生演進(jìn)之路

    阿里云原生張羽辰:服務(wù)發(fā)現(xiàn)技術(shù)選型那點(diǎn)事兒

    螞蟻研究員玉伯:做一個(gè)簡(jiǎn)單自由有愛(ài)的技術(shù)人

    阿里高級(jí)技術(shù)專家至簡(jiǎn): Service Mesh 在超大規(guī)模場(chǎng)景下的落地挑戰(zhàn)

    阿里巴巴山獵:手把手教你玩轉(zhuǎn)全鏈路監(jiān)控

    阿里涉江:你真的會(huì)學(xué)習(xí)嗎?從結(jié)構(gòu)化思維說(shuō)起

    螞蟻金服資深技術(shù)專家經(jīng)國(guó):云原生時(shí)代微服務(wù)的高可用架構(gòu)設(shè)計(jì)

    深入分布式緩存之EVCache探秘開(kāi)局篇

    ? ?END ? ?? #架構(gòu)師必備#點(diǎn)分享點(diǎn)點(diǎn)贊點(diǎn)在看

    總結(jié)

    以上是生活随笔為你收集整理的同程旅行王晓波:如何改变 Redis 用不好的误区的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 国产欧美一区二区 | 人人妻人人澡人人爽国产一区 | 中文字幕一区二区在线观看 | 亚洲视频中文字幕 | 饥渴放荡受np公车奶牛 | 求av网址 | 亚洲天堂日韩av | 精品婷婷| 日本少妇一区 | 国产孕妇一区二区三区 | 污污免费观看 | 欧美视频一区二区三区四区在线观看 | 90岁老太婆乱淫 | 午夜不卡在线观看 | 亚洲区一 | 求免费黄色网址 | 五月婷婷激情四射 | 国产精品1234区 | 热re99久久精品国产99热 | а√天堂资源官网在线资源 | 亚洲午夜激情 | 九色视频丨porny丨丝袜 | 成人精品一区二区三区电影 | 999热精品视频 | 日韩午夜小视频 | 91香蕉在线看 | 91精品国产综合久久久蜜臀粉嫩 | 麻豆tv在线观看 | 国产精品一区二区三区免费视频 | 亚洲成人看片 | 网红日批视频 | videosex抽搐痉挛高潮 | 91国在线观看 | 黄色免费在线看 | 亚洲一区中文字幕在线 | 不卡中文一二三区 | 日韩av在线免费 | 国产精品一区二区三区免费在线观看 | 九热在线| 色站综合| 女人洗澡一级特黄毛片 | 免费在线一级片 | 毛片基地视频 | 黑人狂躁日本妞hd | 国内精久久久久久久久久人 | 1000部啪啪未满十八勿入 | 国产高清在线视频 | 美女扒开粉嫩尿口 | 狼性av| 少妇xxxx| 免费黄色网址大全 | 色在线视频 | 中文字幕+乱码+中文乱 | 日本不卡视频 | 法国空姐 在线 | 午夜免费大片 | 亚洲伦理影院 | 色涩色| 成人免费做受小说 | 天天激情 | 成人午夜在线免费观看 | 日韩精品第一区 | 黑人玩弄人妻一区二区三区免费看 | 在线不卡一区二区 | 97超碰碰| 女人的毛片| 久久精品午夜 | 国产精品调教 | www嫩草 | 国产一区免费在线观看 | 天堂一区在线 | 野花视频在线观看免费 | 特级毛片网站 | mm131国产精品 | 亚洲aaa级| 日本亚洲网站 | 午夜激情欧美 | 亚洲性图一区二区 | 国产福利第一页 | 亚洲自偷自偷偷色无码中文 | 中文av资源 | 国产毛片网 | 97青草| 人妻无码一区二区三区免费 | www色中色| 亚洲av无码国产精品永久一区 | av在线播放一区二区三区 | 亚洲乱码一区二区三区在线观看 | 欧美人妖另类 | 波多野结衣潜藏淫欲 | 亚洲精品高清视频 | 韩日一区 | 国产精品免费久久久久 | 国产麻豆一精品一av一免费 | 青青草自拍偷拍 | 成人不卡av | 最新在线中文字幕 | 国产精品久久伊人 | 欧美在线视频二区 |