1. 程式人生 > 實用技巧 >AMD 5700 XT顯示卡裝ubuntu18.04.* 驅動的問題解決(全)

AMD 5700 XT顯示卡裝ubuntu18.04.* 驅動的問題解決(全)

一:簡介

1.1、概念

  資料的臨時存放空間

1.2、主要特點

  1.資料會被臨時存在記憶體中

  2.可以將查詢結果臨時存放在快取中

  3.第二次開始資料獲取,從快取中獲取

  4.伺服器內部快取,每次獲取資料不需要通過網路傳輸

1.3、優點

  1.提高查詢效率

  2.降低資料庫訪問壓力(DB硬體、DB連線數資源)


二、一級快取

2.1、概念

  SqlSsession級別的快取

2.2、特點

  1.SqlSsession自帶一塊獨立的空間

  2.SqlSsession查詢資料,會預設放入快取中

  3.第二次查詢,SqlSsession會直接從快取中拿資料,不會發送sql語句

  4.生命週期為一個事務過程,如果SqlSsession.commit()被呼叫,一級快取將會被清空


三、二級快取

3.1、概念

  1.全域性快取

  2.SqlSessionFactory級別快取

  3.可以共享多個SqlSession

3.2、特點

  1.第一次查詢會從DB中獲得資料,並通過網路傳輸給java

  2.將第一次查詢結果,放入全域性快取(二級快取)

  3.從第二次查詢開始,每次都是從全域性快取中獲取資料(tomcat的jvm的記憶體中獲取,避免通過網路傳輸)

3.3、使用步驟

  1.被快取的的資料物件型別要可序列化

public class xxx implements
Serializable{};

  2.需要在使用二級快取的sql的mapper中新增

 <cache> </cache>  
表示當前mapper檔案中所有select標籤,查詢結果都會放入快取中

3.4、工作機制

  1.每次查詢先從快取中獲得資料,如果獲得,直接返回資料,不會發送sql

  2.如果快取中沒有獲得,那麼就會發送sql,從資料庫獲得資料

3.5、其他特點

  1.開啟二級快取的mapper檔案中的所有select標籤都會預設使用快取。(先從快取中獲取,能獲取就返回,不能獲取就從DB獲取,並存入快取)

  2.mapper檔案中的DML標籤insert update delete 會預設清空快取,發生在事務提交之後。(保持快取中資料的一致性)

  3.session.commit(); 只有提交了事務才能將查詢結果二級快取中。(清空一級快取)

3.6、二級快取原理:

  1.二級快取劃分規則:是以mapper檔案中的namespace進行劃分的,並且一個快取空間對應一個namespace

  2.原始碼實現:

    本質上是一個HashMap

    key:"namespaceid+執行sql語句+實際傳入的引數"

    value:查詢結果的返回值

3.7、快取應用原則:

  該資料的查詢次數遠遠多於修改次數