關於api接口以及頁面數據通信域名,緩存cdn設置優化


以B站為例:

主域名:www.bilibili.com

賬戶登錄注冊相關域名,包括app登錄:passport.bilibili.com

靜態資源css,js,img等相關域名:static.bilibili.com

用戶中心相關域名:space.bilibili.com

webapi接口相關域名:api.bilibili.com

app接口相關域名:app.bilibili.com

 

另外有一些隱性的域名:

例如數據庫連接相關的:db.bilibili.com

redis緩存相關的:redis.bilibili.com

 

由此可見:

系統的架構無非就是一個“拆”字,合理的將不同的模塊拆分成不同的域名,有以下幾點好處

1、每個域名配置獨立的服務器,服務器的業務更加專注,擴展更加方便。

2、針對特定的業務,可以更方便的對服務器進行優化。

 

相關分析

1、登錄狀態,設置cookie,范圍域名未.bilibili.com,保證跨域名能登錄狀態

2、用戶中心用特定域名,增加url的友好性,防止url過長,能直接https://space.bilibili.com/2374194這種域名+id的格式,url表現力極強。

3、api相關用api.bilibili.com域名。

4、動態數據,例如首頁,各分區頁,數據變更頻繁的頁面,全部用ajax請求數據的方式,因為數據變換頻繁,也就沒有渲染兼容seo的必要了。

5、播放頁,最重要的一個頁面,相關標題和簡介等,則需要用到渲染的方式,兼容seo,其他一些動態數據,例如評論,播放量等數據,統一用ajax加載。

6、cdn,靜態資源css,js,img等統一設置了很長的cdn緩存,更新用url參數版本號來控制。

7、甚至一些非動態的接口數據,也可以用cdn來緩存,從而減少db和redis的壓力。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM