# 全自動緩存
* * * * *
上面講解的緩存可以說是半自動的,因為還是需要人為寫代碼來進行管理,比如某商品被下架了 緩存下來的列表數據不會自動更新。
下面咱們來看下全自動緩存的策略

**全自動緩存使用須知**
1.若開啟了全自動緩存則直接進行數據表數據操作不會被更新(建議開發階段不要啟動,啟動自動緩存后若直接操作數據表會導致數據顯示不正確)
2.若使用全自動緩存需要使用支持的方法進行數據表操作(包括查詢與更新)
3.啟動全自動緩存后也可以通過屬性值控制是否需要讀取緩存或更新緩存
**全自動緩存啟用**
將app目錄下的config.php文件中配置is_auto_cache設置為 true(開啟后建議將runtime目錄清空)
設置為false則為關閉全自動緩存
**全自動緩存支持的查詢方法**
目前全自動緩存僅支持 getList,getInfo 方法,分別用于查詢列表與查詢單條數據
**全自動緩存支持的更新方法**
setInfo,updateInfo,setList,setFieldValue,deleteInfo
若這些內置的方法滿足不了您的需求,可自己加上封裝的方法(記得加上$this->updateCache($this);此方法才能自動更新緩存哈)
**部分操作不需要更新緩存設置**
~~~
$this->modelActionLog->is_update_cache_version = false;
~~~
比如某些場景咱們不想操作后讓此緩存更新則可以使用上面的屬性,若不寫這句的話默認會自動更新
**部分查詢不需要查詢緩存設置**
~~~
$this->modelActionLog->no_auto_cache = true;
~~~
比如某些查詢列表或查詢單條記錄不希望從緩存中自動獲取,可以使用以上屬性控制獲取最新數據
- 序言
- 基礎
- 安裝環境
- 安裝演示
- 規范
- 目錄
- 介紹
- 后臺介紹
- 后臺首頁
- 會員管理
- 系統管理
- 系統設置與配置管理
- 菜單管理
- 系統回收站
- 服務管理
- 插件管理
- 文章管理
- 接口管理
- 優化維護
- SEO管理
- 數據庫
- 文件清理
- 行為日志
- 執行記錄
- 統計分析
- 接口介紹
- 接口文檔
- 錯誤碼設計
- Token介紹
- 前臺介紹
- 架構
- 架構總覽
- 生命周期
- 入口文件
- 模塊設計
- 依賴注入
- 控制器架構
- 邏輯架構
- 驗證架構
- 服務架構
- 模型架構
- 行為架構
- 插件架構
- 配置
- 配置介紹
- 配置加載
- 配置擴展
- 請求
- 請求信息
- 日志
- 后臺行為日志
- 系統執行日志
- 框架日志
- 數據
- 數據庫設計
- 數據字典
- 數據庫操作
- 事務控制
- 混合操作
- 實戰
- 控制器
- 邏輯與驗證
- 視圖與模型
- 插件研發
- 服務研發
- 接口研發
- 雜項
- 數據導入導出
- 二維碼條形碼
- 郵件發送
- 云存儲服務
- 支付服務
- 短信服務
- 微信分享
- 生成海報
- 聊天室
- PJAX
- Demo
- Widget
- 附錄
- 常量參考
- 配置參考
- 函數參考
- 進階
- Redis
- 自動緩存
- 全自動緩存
- 索引
- 數據簽名
- 全自動事務
- 隊列