這一部分主要講模塊化技術(shù)的演變 上圖展示了我們以前的一個數(shù)據(jù)交互邏輯,我們是按照頁面來分的接口,然而,接下去我們的產(chǎn)品做了一個龐大的產(chǎn)品矩陣,導(dǎo)致我們的頁面迅速膨脹 為了適配...
這一部分主要講模塊化技術(shù)的演變 上圖展示了我們以前的一個數(shù)據(jù)交互邏輯,我們是按照頁面來分的接口,然而,接下去我們的產(chǎn)品做了一個龐大的產(chǎn)品矩陣,導(dǎo)致我們的頁面迅速膨脹 為了適配...
2019年開始,業(yè)務(wù)開始了突飛猛進(jìn)的發(fā)展,我們的日活基本在30~100萬之間,需求越來越多、越來越復(fù)雜,尤其是面向UI交互的變化是非常頻繁的,光詳情頁就有9個版本之多。 面對...
上文提到我們對內(nèi)部統(tǒng)一由third庫來支持,時間久了之后,出現(xiàn)了越來越多的需求,我們通過目前的運(yùn)營后臺的開發(fā)已經(jīng)無法快速的滿足了。比如,運(yùn)營做了一個活動,想快速的看數(shù)據(jù);這個...
有人會問過我,我們是怎么抗住百萬日活的?其實(shí)這個問題很難回答,因?yàn)橹С诌@樣的高并發(fā)并沒有什么難度,如果一定要講的話,我會把一個鏈路里的請求進(jìn)行一下拆解,來分段講解下思路 先看...
之前說到,我們的慢sql因?yàn)樵缙诘某绦騿T都很初級,因此,線上跑的慢sql滿天飛;雖然做了DB隔離,把慢sql的影響局限在各自的微服務(wù)內(nèi),但還是要去解決。 當(dāng)時的環(huán)境是,我們的...
我伴隨公司走了4年了,我覺得有必要把我這四年來經(jīng)歷的技術(shù)架構(gòu)的演進(jìn)沉淀下來分享給大伙,里面有些內(nèi)容不一定100%準(zhǔn)確,因?yàn)橛行┮呀?jīng)記不太清楚了,如有偏差,請反饋給我哈,謝謝。...
自從我接手公司的時候,公司的數(shù)據(jù)庫基本就是單點(diǎn),為了省錢,一律低配,那個時候的數(shù)據(jù)庫和現(xiàn)在用的一樣,對于業(yè)務(wù)庫,我們還是用的阿里云的RDS(MYSQL)。 我記得當(dāng)時線上就一...
前言:為什么傳統(tǒng)數(shù)據(jù)庫使用B樹較多,而大數(shù)據(jù)存儲使用LSM樹較多?kudu為什么比hbase更適合支持OLAP查詢? 上一篇場景和挑戰(zhàn) 提到數(shù)據(jù)系統(tǒng)最基本的需求就是數(shù)據(jù)存取,...
JIT概念 JIT:Just In Time Compiler,一般翻譯為即時編譯器,這是是針對解釋型語言而言的,而且并非虛擬機(jī)必須,是一種優(yōu)化手段,Java的商用虛擬機(jī)Ho...
一、同步調(diào)用 默認(rèn)情況下,我們通過Dubbo調(diào)用一個服務(wù),需得等服務(wù)端執(zhí)行完全部邏輯,方法才得以返回。這個就是同步調(diào)用。 但大家是否考慮過另外一個問題,Dubbo底層網(wǎng)絡(luò)通信...
背景:后端為了能保證前端可以快速接入,在開發(fā)早期就要提供接口API文檔,我們使用swagger管理起來的。但因?yàn)榻涌谖臋n給出的過早,無法保證后面不去變更,這樣會產(chǎn)生幾個問題 ...
TCP協(xié)議,它是如何解決網(wǎng)絡(luò)傳輸不可靠的問題。這其中有個很關(guān)鍵的部分,就是我們的滑動窗口協(xié)議。 從工程學(xué)角度上,我們來看一看滑動窗口協(xié)議,它到底解決了一個怎樣的問題? 滑動窗...
文章摘自于:https://www.cnblogs.com/yrpen/p/3777963.html pagecache:文件系統(tǒng)層級的緩存,從磁盤里讀取的內(nèi)容是存儲到這里,...
(1)select==>時間復(fù)雜度O(n) 它僅僅知道了,有I/O事件發(fā)生了,卻并不知道是哪那幾個流(可能有一個,多個,甚至全部),我們只能無差別輪詢所有流,找出能讀出數(shù)據(jù),...
@37_1478 紅黑樹不是平衡二叉樹,你可以理解為,去掉紅色節(jié)點(diǎn),他就是個平衡二叉樹。
但它的紅節(jié)點(diǎn)可以填充在黑色節(jié)點(diǎn)中間,不需要像平衡二叉樹一樣不斷地去重新平衡,因此會穩(wěn)定一些。
一篇炒雞棒的解釋紅黑樹的文章(轉(zhuǎn)載)0 、前言 紅黑樹是軟件工程中非常重要的數(shù)據(jù)結(jié)構(gòu),在很多的工程領(lǐng)域都有它的身影,比如java的treemap、linkedhashmap,linux內(nèi)核、linux的高并發(fā)多...
KAFKA推送消息用到了sendfile,落盤技術(shù)用到了mmap,DMA貫穿其中。 先說說零拷貝 零拷貝并不是不需要拷貝,而是減少不必要的拷貝次數(shù)。通常是說在IO讀寫過程中。...
一、mmap基礎(chǔ)概念 mmap是一種內(nèi)存映射文件的方法,即將一個文件或者其它對象映射到進(jìn)程的地址空間,實(shí)現(xiàn)文件磁盤地址和進(jìn)程虛擬地址空間中一段虛擬地址的一一對映關(guān)系。實(shí)現(xiàn)這樣...
首先,我們先來看看一次查詢/更新語句流程圖 mysql不是每次數(shù)據(jù)更改都立刻寫到磁盤,而是會先將修改后的結(jié)果暫存在內(nèi)存中,當(dāng)一段時間后,再一次性將多個修改寫到磁盤上,減少磁盤...