更新時間:2023年04月03日10時00分 來源:傳智教育 瀏覽次數(shù):
兩個并發(fā)的事務(wù)同時訪問持久層緩存中的相同數(shù)據(jù)時,可能會出現(xiàn)各類并發(fā)問題,所以也需要采用必要的隔離措施解決這些問題。由于在二級緩存中也會出現(xiàn)并發(fā)問題,因此在Hibernate的二級緩存中,可以設(shè)定以下四種類型的并發(fā)訪問策略,以解決這些問題。每一種訪問策略對應(yīng)一種事務(wù)隔離級別,具體介紹如下:
·只讀型(Read-Only):提供Serializable事務(wù)隔離級別,對于從來不會被修改的數(shù)據(jù),可以采用這種訪問策略。
·讀寫型(Read-write):提供Read Committed事務(wù)隔離級別,對于經(jīng)常讀但是很少被修改的數(shù)據(jù),可以采用這種隔離類型,因為它可以防止臟讀。
·非嚴(yán)格讀寫(Nonstrict-read-write):不保證緩存與數(shù)據(jù)庫中數(shù)據(jù)的一致性,提供Read Uncommitted事務(wù)隔離級別,對于極少被修改,而且允許臟讀的數(shù)據(jù),可以采用這種策略。
·事務(wù)型(Transactional):僅在受管理環(huán)境下使用,它提供了Repeatable Read事務(wù)隔離級別。對于經(jīng)常讀但是很少被修改的數(shù)據(jù),可以采用這種隔離類型,因為它可以防止臟讀和不可重復(fù)讀。