聊聊QQ背后的技術(shù)實現(xiàn)
點擊下方“JavaEdge”,選擇“設(shè)為星標”
免責聲明~
任何文章不要過度深思!
萬事萬物都經(jīng)不起審視,因為世上沒有同樣的成長環(huán)境,也沒有同樣的認知水平,更「沒有適用于所有人的解決方案」;
不要急著評判文章列出的觀點,只需代入其中,適度審視一番自己即可,能「跳脫出來從外人的角度看看現(xiàn)在的自己處在什么樣的階段」才不為俗人。
怎么想、怎么做,全在乎自己「不斷實踐中尋找適合自己的大道」
1 QQ咋實現(xiàn)數(shù)據(jù)瞬間查詢的?
比如通過QQ號或者昵稱找用戶,得有幾億條數(shù)據(jù)了吧?
建個集霸索引,你的QQ號去mod 100分庫不是更快!所有QQ號分100個數(shù)據(jù)庫,按QQ號最后兩位決定在哪個庫。就算20億qq號,取模分成100等分 每份也才2000萬條數(shù)據(jù),差不多剛到b+tree的三四層,差不多四次io就能查出來
2 QQ號碼,int還是string?
爭論很激烈,不知道誰對誰錯……相信有大神!
反正內(nèi)幕消息,騰訊內(nèi)部統(tǒng)一從int32切換到int64,并作為規(guī)范保留。
而且騰訊自家的應(yīng)用,使用16進制都能夠登錄,電腦版qq,你可以使用16進制來登錄,只需要在前面加上0x即可
比如0x6864B95D,其實就是1751431517。然后就可以用0x6864B95D,如果用string實現(xiàn)的話會加大代碼復(fù)雜程度。
寫在最后
公眾號:JavaEdge專注分享軟件開發(fā)全生態(tài)相關(guān)技術(shù)文章、視頻教程資源、熱點資訊等,如果喜歡我的分享,給 ???? 點一個贊?? 或者 ?關(guān)注都是對我最大的支持。
歡迎長按圖片加好友,我會第一時間和你分享軟件行業(yè)趨勢,面試資源,學(xué)習途徑等等。
添加好友備注【技術(shù)群交流】拉你進技術(shù)交流群
關(guān)注公眾號后,在后臺私信:
-
回復(fù)【架構(gòu)師】,獲取架構(gòu)師學(xué)習資源教程 -
回復(fù)【面試】,獲取最新最全的互聯(lián)網(wǎng)大廠面試資料 -
回復(fù)【簡歷】,獲取各種樣式精美、內(nèi)容豐富的簡歷模板 -
回復(fù) 【路線圖】,獲取直升Java P7技術(shù)管理的全網(wǎng)最全學(xué)習路線圖 -
回復(fù) 【大數(shù)據(jù)】,獲取Java轉(zhuǎn)型大數(shù)據(jù)研發(fā)的全網(wǎng)最全思維導(dǎo)圖 -
更多教程資源應(yīng)有盡有,歡迎 關(guān)注,慢慢獲取
