2016年2月5日 星期五
2015年12月28日 星期一
2015年12月22日 星期二
2015年12月17日 星期四
OpenSessionInViewFilter 的配置及替代方案
參考來源
Spring 為我們提供了一個叫做 OpenSessionInViewFilter 的Filter,他是標準的 Servlet Filter 所以我們把它按照規範配置到 web.xml 中方可使用。使用中我們必須配合使用 Spring 的 HibernateDaoSupport 來進行開發,也就是說,我們的dao層的類都要繼承於 HibernateDaoSupport,從中由 Spring 來控制 Hibernate 的 Session 在request來的時候開啟,走的時候關閉,保證了我們訪問data對象時的穩定性。
Spring 為我們提供了一個叫做 OpenSessionInViewFilter 的Filter,他是標準的 Servlet Filter 所以我們把它按照規範配置到 web.xml 中方可使用。使用中我們必須配合使用 Spring 的 HibernateDaoSupport 來進行開發,也就是說,我們的dao層的類都要繼承於 HibernateDaoSupport,從中由 Spring 來控制 Hibernate 的 Session 在request來的時候開啟,走的時候關閉,保證了我們訪問data對象時的穩定性。
2015年12月15日 星期二
Spring、Hibernate中使用Ehcache Cache
EhCache是Hibernate的二級Cache技術之一,可以把查詢出來的data存儲在Memory或者disk,節省下次同樣查詢語句再次查詢database,大幅減輕Database壓力;
但這會有個缺點, 若直接從DB改資料時, 因被Query Cache住, 所以重新查詢時, 會查詢到舊有的資料, 需重啟server後, 重新bind資料, 才會取得最新資料, 否則皆需在web介面以系統面方式修改。
但這會有個缺點, 若直接從DB改資料時, 因被Query Cache住, 所以重新查詢時, 會查詢到舊有的資料, 需重啟server後, 重新bind資料, 才會取得最新資料, 否則皆需在web介面以系統面方式修改。
EhCache簡介
二級cache
- EhCache是一個快速的、輕量級的、易於使用的、process的cache。它支持read-only和read/write cache,memory和disk cache。但是不支持Clustering。
- OSCache是另外一個開源的cache方案。它同時還支持JSP頁面或任意對象的cache。OSCache功能強大、靈活,和EHCache一樣支持read-only和read/write cache、支持memory和disk cache。同時,它還提供通過JGroups或JMS進行cluster的基本支持。
- SwarmCache 是一個簡單的、基於JavaGroups提供cluster的cache方案。支持read-only和nonstrict read/write cache。這種cache適用於讀操作遠遠高於寫操作頻率的應用。
- JBoss TreeCache 是一個強大的、可複製(同步或異步)和支持事務的cache。如果你需要一個真正的支持事務的cache架構,使用這個方案吧。
MemCached OsCache EhCache 區別
Memcache:
- 分散式memory cache system,佔用其他server的memory。很多互聯網,負載均衡三台(以三台為例),web server可以共享一台Memcache的資源。傳遞的訊息以key,value對的形式存儲。傳遞的數據要實現序列化。
訂閱:
文章 (Atom)