<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### 緩存 xorm內置了一致性緩存支持,不過默認并沒有開啟。要開啟緩存,需要在engine創建完后進行配置,如:啟用一個全局的內存緩存 ~~~ cacher := xorm.NewLRUCacher(xorm.NewMemoryStore(), 1000) engine.SetDefaultCacher(cacher) ~~~ 上述代碼采用了LRU算法的一個緩存,緩存方式是存放到內存中,緩存struct的記錄數為1000條,緩存針對的范圍是所有具有主鍵的表,沒有主鍵的表中的數據將不會被緩存。如果只想針對部分表,則: ~~~ cacher := xorm.NewLRUCacher(xorm.NewMemoryStore(), 1000) engine.MapCacher(&user, cacher) ~~~ 如果要禁用某個表的緩存,則: ~~~ engine.MapCacher(&user, nil) ~~~ 設置完之后,其它代碼基本上就不需要改動了,緩存系統已經在后臺運行。 當前實現了內存存儲的CacheStore接口MemoryStore,如果需要采用其它設備存儲,可以實現CacheStore接口。 不過需要特別注意不適用緩存或者需要手動編碼的地方: 1. 當使用了`Distinct`,`Having`,`GroupBy`方法將不會使用緩存 1. 在`Get`或者`Find`時使用了`Cols`,`Omit`方法,則在開啟緩存后此方法無效,系統仍舊會取出這個表中的所有字段。 1. 在使用Exec方法執行了方法之后,可能會導致緩存與數據庫不一致的地方。因此如果啟用緩存,盡量避免使用Exec。如果必須使用,則需要在使用了Exec之后調用ClearCache手動做緩存清除的工作。比如: ~~~ engine.Exec("update user set name = ? where id = ?", "xlw", 1) engine.ClearCache(new(User)) ~~~ 緩存的實現原理如下圖所示: ![cache design](https://box.kancloud.cn/2015-08-23_55d9d87c254a3.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看