日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
程序員如何設(shè)計(jì)一個(gè)rpc框架?

Redis服務(wù)支持5000萬(wàn)的QPS,有什么好的思路?

論實(shí)際項(xiàng)目用阿里云,雖然很貴,但實(shí)現(xiàn)簡(jiǎn)單,假如做技術(shù)秀,自行開(kāi)發(fā)x86+fpga或gpu,畢竟redis用處,這是十分簡(jiǎn)單的數(shù)據(jù)結(jié)構(gòu),5000w就是50m,看每條數(shù)據(jù)大小多少了,一條pcie3.0 16x不夠就用兩條三條四條,進(jìn)一步作秀,用fpga處理tcp/ip協(xié)議,一個(gè)節(jié)點(diǎn)做5000w真不是問(wèn)題,只是為什么說(shuō)這是作秀?一系列的開(kāi)發(fā)過(guò)程,多種平臺(tái)技術(shù)混合使用,沒(méi)多少企業(yè)愿意這么干

5000萬(wàn)QPS的系統(tǒng)是什么概念?我先說(shuō)一個(gè)數(shù)字google一天做50億查詢(xún);紐約交易所平均一天20-30M筆交易;全球最大廣告交易平臺(tái)Double Click的QPS為2M。除了面試沒(méi)有人會(huì)真的遇到這樣的挑戰(zhàn)。

簡(jiǎn)單地說(shuō),5000萬(wàn)QPS以現(xiàn)在技術(shù)手段,除非做客戶(hù)端提前知道數(shù)據(jù)的分布,知道去哪個(gè)節(jié)點(diǎn),數(shù)據(jù)不會(huì)在節(jié)點(diǎn)中同步。如果用Redis一個(gè)CPU大概可以做到5KQPS,每個(gè)節(jié)點(diǎn)主從。也就是說(shuō)犧牲可用性。

雖然知道你問(wèn)這個(gè)問(wèn)題的時(shí)候,其實(shí)自己并沒(méi)有想的太清楚,但是為了漲粉,我還是愿意來(lái)評(píng)論一下。

我想對(duì)redis來(lái)說(shuō),單機(jī)qps 5000w暫時(shí)肯定是不能的事情了,所以需要分布式集群來(lái)解決這個(gè)問(wèn)題。

但是現(xiàn)實(shí)中的分布式方案,其實(shí)都是在各種現(xiàn)有條件下的權(quán)衡結(jié)果,我想現(xiàn)實(shí)中5000wqps的應(yīng)用可能主要會(huì)有以下場(chǎng)景。

1.純讀場(chǎng)景(存儲(chǔ)量單機(jī)可存儲(chǔ))

對(duì)于純讀場(chǎng)景,其實(shí)是離線(xiàn)寫(xiě) + 在線(xiàn)讀的模式,單純的加機(jī)器就可以完成你的需求。

單機(jī)我記得10w沒(méi)問(wèn)題,那你可能需要500臺(tái)機(jī)器,如果你是多idc,那么N + 1冗余考慮到的話(huà),可能實(shí)際會(huì)多點(diǎn)。

這就是面試閑打牙說(shuō)的。

就像一個(gè)20-30人的公司,面試問(wèn)的都是一天億級(jí)數(shù)據(jù)量的問(wèn)題。這個(gè)規(guī)模的公司,流量有限,數(shù)據(jù)量一天最高峰能到幾百萬(wàn)就不錯(cuò)了,還不是天天如此。本身面試的人也很少有真的處理億級(jí)數(shù)據(jù)量的問(wèn)題的人。雙方有時(shí)純空對(duì)空交流。

不過(guò)現(xiàn)實(shí)世界真有悲劇,搞微服務(wù),日活高峰也就1000的系統(tǒng),弄了上千臺(tái)服務(wù)再跑,基本都空跑,一年服務(wù)器錢(qián)老多了。

程序員如何設(shè)計(jì)一個(gè)rpc框架?

RPC框架全稱(chēng)叫“Remote Procedure Call”-遠(yuǎn)程過(guò)程調(diào)用。

在分布式應(yīng)用大放異彩的今天,軟件研發(fā)工作(微服務(wù)、中臺(tái))是一定離不開(kāi)分布式,既然說(shuō)到分布式就一定離不開(kāi)RPC,所以RPC框架也是廣大程序員進(jìn)階路上必須跨過(guò)去的一道坎,也是工作中經(jīng)常會(huì)用到的。因此,了解并掌握RPC框架的底層原理和其設(shè)計(jì)思想也是每一個(gè)程序員的必備技能之一。

各大互聯(lián)網(wǎng)公司都或多或少實(shí)現(xiàn)了自己的RPC框架,其中比較出名且常用的有:

阿里巴巴的dubbo:這個(gè)大家應(yīng)該都用到過(guò)吧?GitHub地址:https://github.com/apache/dubbo

基于阿里巴巴fork的當(dāng)當(dāng)版dubbox:這個(gè)貌似也都用到過(guò)?在dubbo不死不活的那幾年。GitHub地址:https://github.com/dangdangdotcom/dubbox

谷歌grpc:谷歌版本的rpc,GitHub地址(Java版):https://github.com/grpc/grpc-java

大家可以自己去GitHub上去搜索這三大框架并進(jìn)行學(xué)習(xí)。

如果我們自己去實(shí)現(xiàn)一個(gè)簡(jiǎn)單的RPC框架要怎么做?這個(gè)時(shí)候我們應(yīng)該意識(shí)到我們是在寫(xiě)一個(gè)框架,寫(xiě)一個(gè)框架意味著我們無(wú)法再隨意的使用第三方依賴(lài)包,也就是除了一些工具類(lèi)包可以使用,其他的都需要我們用Java一行一行的寫(xiě)出來(lái)。

下面提供一下如何用Java實(shí)現(xiàn)一個(gè)簡(jiǎn)單的RPC功能(談不上框架):

到此,以上就是小編對(duì)于redis 動(dòng)態(tài)修改配置的問(wèn)題就介紹到這了,希望這2點(diǎn)解答對(duì)大家有用。


網(wǎng)站名稱(chēng):程序員如何設(shè)計(jì)一個(gè)rpc框架?
鏈接分享:http://www.dlmjj.cn/article/cccooso.html