簡體   English   中英

TYPO3 Extbase存儲庫查詢緩存

[英]TYPO3 Extbase Repository Query Cache

我有一些關於緩存的問題。 一些先決條件首先:

// query 1
$data1 = $this->myRepository->findByPid($myPid);
// query 2
$data2 = $this->myRepository->findOneByUid($myUid);

我的問題:

  1. 如果我在腳本中多次執行查詢2,第一次調用將從數據庫中檢索數據,所有其他數據都從緩存中檢索,而不查詢數據庫?
  2. 如果我稍后再次執行查詢2(例如在第二個腳本中),則會再次從數據庫中檢索數據(除了我使用緩存框架存儲此查詢的結果之外,沒有持久查詢緩存)?
  3. 如果我執行查詢1然后查詢2並且查詢1包含uid“$ myUid”的數據,那么從緩存中檢索查詢2的數據?

對於較舊和較新的Typo3版本,行為是不同的。 從Typo3 7.x開始,如果您使用默認存儲庫查詢,則始終使用緩存。 從數據庫中檢索數據集后,屬性映射器將其映射到域對象,如果該對象已存在於緩存中,則返回該對象。

在Typo3 6.x中,如果使用->findByUid選擇它,例如作為控制器參數,則會為同一個uid獲取兩個不同的對象

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM