本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
常見 ElastiCache 使用案例以及如 ElastiCache 何提供協助
不論是提供最新的新聞或產品目錄,或是出售活動門票,速度都是遊戲的重點。傳遞內容的速度,會顯著影響您網站和商業的成功與否。
在「對於耐心不足的 Web 使用者來說,一眨眼的等待時間也嫌太長
當某人想要資料,若這些資料已經過快取,您就可以更迅速提供資料。無論是網頁還是影響商業決策的報告,都適用同樣的道理。您的企業是否能快取您的網頁、以最短的延遲將其傳遞?
很顯然,需要最大的項目,就是您最想要快取的。但為何不快取較不常用的項目? 即使是經過最佳化的資料庫查詢或遠端 API 呼叫,也會比從記憶體內快取擷取一般金鑰慢很多。「明顯較慢」這件事,就會造成客戶流失。
下列範例說明使用 ElastiCache 可改善應用程式整體效能的一些方法。
記憶體內資料存放區
記憶體內鍵/值存放區的主要目的,是提供超快速 (亞毫秒級延遲) 和經濟實惠的資料複本存取。大多數資料存放區,都具有經常存取但不常更新的資料區域。此外,對資料庫進行查詢,總是比在鍵/值對快取中找出鍵要更慢,且費用更高。執行某些資料庫查詢的費用特別昂貴。其中一個例子是涉及跨多個資料表之聯結的查詢,或具有密集型計算的查詢。透過快取這類查詢結果,您只需支付查詢的一次性費用。然後就可以快速擷取資料多次,而無需重新執行查詢。
我應該快取什麼?
在決定要快取哪些資料時,請考慮下列因素:
速度和費用 - 從資料庫取得資料,總是比從快取要來得慢,且費用更高。某些資料庫查詢在本質上比其他查詢更慢且更昂貴。例如,在多個資料表上執行聯結查詢,與簡單的單一資料表查詢相比,前者的速度明顯較慢且費用更高。如果需要以較慢且費用較高的查詢方式來取得所需資料,則適合改為快取。如果需要以相對快速和簡單的查詢來取得資料,仍可能適合使用快取,具體取決於其他因素。
資料和存取模式 - 判斷要快取的內容也涉及了解資料本身及其存取模式。例如,快取快速變動或很少存取的資料並沒有意義。若要讓快取提供真正的益處,資料應為相對靜態且經常存取。例如社群媒體網站上的個人資料。相反地,如果快取資料不能提供速度或成本優勢,則不建議快取資料。例如,快取會傳回搜尋結果的網頁並沒有意義,因為查詢和結果通常都是獨一無二的。
過時 - 根據定義,快取的資料是過時的資料。即使某些情況下並非過時,仍應該一律視為過時。若要判斷您的資料是否適合快取,您需要判斷應用程式對過時資料的容錯能力。
您的應用程式或許能承受某個內容中的過時資料,但不能承受另一個內容中的過時資料。例如,假設您的網站提供公開交易股票價格。在附有免責聲明,表示可能有 n 分鐘延遲的情況下,您的客戶可能會接受一定程度的過時性。但是,如果是向銷售或購買的經紀人提供股票價格,您需要即時的資料。
如果下列描述成立,便可考慮快取您的資料:
與快取擷取相比,取得您資料的速度緩慢或費用高昂。
使用者經常存取您的資料。
您的資料相對保持無變動,或者資料會快速變動但過時性不夠成大問題。
如需詳細資訊,請參閱下列內容:
ElastiCache (Memcached) 使用者指南中的快取策略
ElastiCache 客戶見證
要了解如何像 Airbnb 這樣的企業, PBS, Esri, 和其他人使用 Amazon ElastiCache 與改善客戶體驗發展他們的業務, 請參閱其他人如何
您也可以觀看教學課程影片,瞭解其他ElastiCache 客戶使用案例。