天天看點

網際網路java面試寶典

  答題:

消息隊列的核心功能就是:解耦合,異步,流量削峰

解耦:接口調用發送,那如果e系統也要這個資料呢?那如果c系統現在不需要了呢?現在a系統又要發送第二種資料了呢?a系統負責人瀕臨崩潰中。。。

再來點更加崩潰的事兒,a系統要時時刻刻考慮bcde四個系統如果挂了咋辦?我要不要重發?我要不要把消息存起來?頭發都白了啊。。。

----------------------------------------------------------------------------------------------------------

異步:a系統接收一個請求,需要在自己本地寫庫,還需要在bcd三個系統寫庫,自己本地寫庫要3ms,bcd三個系統分别寫庫要300ms、450ms、200ms。

最終請求總延時是3 + 300 + 450 + 200 = 953ms,接近1s,使用者感覺搞個什麼東西,慢死了慢死了。

---------------------------------------------------------------------------------------------------------

削峰:每天0點到11點,a系統風平浪靜,每秒并發請求數量就100個。結果每次一到11點~1點,每秒并發請求數量突然會暴增到1萬條。

但是系統最大的處理能力就隻能是每秒鐘處理1000個請求啊。。。尴尬了,系統會死。。。

--------------------------------------------------------------------------------------------------------------

  答: