※ 後端面試考古題(一)

※ 後端面試考古題(一)

更新於 發佈於 閱讀時間約 1 分鐘

※ 什麼是快取 (Cache)[kash]?快取 (Cache) 的機制為何?

  1. 什麼是快取 (Cache)?

快取(Cache)是一種將資料存儲在特定位置以便快速檢索的技術。目的是為了彌補 Database 在業務邏輯複雜且數據量龐大時的不足,基本原理是將可重複使用的資料,也就是最常或最近使用的資料等存放到記憶體中,這樣可以避免每一次都去 Database 讀取,達到優化資料存取。在計算機領域中,快取通常用於暫存資料,以便加快對這些資料的存取速度。當系統需要訪問資源時,它首先檢查快取,如果發現資源已經存在於快取中,則可以直接從快取中獲取資源,而不必去原始資料來源處獲取。

  1. 快取 (Cache) 的機制為何?

快取的機制通常包括以下幾個步驟:

  • 檢查快取:當系統需要訪問資源時,首先檢查快取中是否存在這個資源。
  • 命中(Hit):如果資源存在於快取中,則系統會從快取中獲取資源,這稱為“命中”。
  • 未命中(Miss):如果資源不在快取中,則系統需要從原始資料來源(例如磁碟、網絡服務器等)中獲取資源,這稱為“未命中”。
  • 存儲資源:當系統從原始資料來源獲取資源後,通常會將資源存儲在快取中,以便日後快速訪問。
  • 更新和淘汰:快取中的資源可能會因為原始資料的變化而過期,或者快取空間不足時需要淘汰一些資源。因此,快取需要定期更新和淘汰機制來確保其中存儲的資源是最新且最有用的。


avatar-img
奧莉薇走在成為後端工程師之路上
18會員
137內容數
全端網頁開發專業知識分享
留言
avatar-img
留言分享你的想法!
※ 場景: 即時聊天應用: 設計一個支持多房間功能的即時聊天平台,像 WhatsApp、LINE或Facebook Messenger,提供文字、語音、視訊聊天功能,方便管理群組聊天。 功能亮點:加入特別功能,例如可加入多房間功能、使用者名單、表情符號支持、文件分享或訊息已讀未讀狀態。 展示
※ 先建立基本的express後端服務: 1.建立新資料夾:Socket mkdir socket 2.進入資料夾:Socket cd ​bsocket 3. 安裝 Experss 到專案中 npm init -y //初始化專案,建立 package.json 檔 npm insta
※ 什麼是 Socket.io:一個基於傳統 WebSocket API 之上的框架。 ※ Socket.io常用功能: Custom Events:在 Socket.io 中,開發者可以創建自己的事件來處理特定的功能或需求。 Rooms:分組的功能。每個連接的用戶(或稱為 socket)可
※ 場景: 即時聊天應用: 設計一個支持多房間功能的即時聊天平台,像 WhatsApp、LINE或Facebook Messenger,提供文字、語音、視訊聊天功能,方便管理群組聊天。 功能亮點:加入特別功能,例如可加入多房間功能、使用者名單、表情符號支持、文件分享或訊息已讀未讀狀態。 展示
※ 先建立基本的express後端服務: 1.建立新資料夾:Socket mkdir socket 2.進入資料夾:Socket cd ​bsocket 3. 安裝 Experss 到專案中 npm init -y //初始化專案,建立 package.json 檔 npm insta
※ 什麼是 Socket.io:一個基於傳統 WebSocket API 之上的框架。 ※ Socket.io常用功能: Custom Events:在 Socket.io 中,開發者可以創建自己的事件來處理特定的功能或需求。 Rooms:分組的功能。每個連接的用戶(或稱為 socket)可