[Brave]請教資料懶載入的具體實現技術
對於資料的懶載入,在某些物件關係條件下、大資料量情況下對效能是有影響的。那麼,懶載入的根本思路就是“資料在需要的時候才進行載入”。我希望在我的 Brave 系統裡面支援資料的懶載入。原來的考慮是不完整的和不好的,我的思路如下:
在資料值物件中,對於關係屬性(通常是集合型別)的 get 方法,在呼叫該方法的時候作判斷:如果關係資料沒有初始化,那麼就呼叫相關的資料載入方法載入她(通常是透過DAO)。但這裡有幾個嚴重的問題:
1:資料值物件通常是簡單的物件,呼叫資料訪問方法破壞了她的簡單性,雖然是以“客戶程式設計師看不到”的方式進行的;
2:資料值物件通常是需要網路傳輸的,也就是通常是需要序列化的,那麼資料訪問方法的引入,增加了需要序列化的工作,同時,這些東西是不必要的。
所以,這種做法是否定了的。目前的做法(想法)是考慮關係,但是關係資料不進行預先載入,也不是系統機制自動完成的,而是客戶程式設計師呼叫相關的方法自己完成的,也就是,對於存在複雜關係的物件的值的載入可能是多個步驟的,而這些步驟可能來自不同的物件不同的方法。
更好的,我可能是希望是系統自動化完成的,也就是我最初的想法是系統自動的完成的。但是,我的水平還不夠,我不會 物件方法的攔截和自動化的載入(動態的或者靜態的,但這些概念不是很清楚,涉及到了AOP等吧??)。這些技術可能涉及到動態代理的實現,但是,我沒有做過對於產品不是好的選擇,也稍微破壞了系統簡潔的定位,所以希望大家給我一些意見和看法。
在資料值物件中,對於關係屬性(通常是集合型別)的 get 方法,在呼叫該方法的時候作判斷:如果關係資料沒有初始化,那麼就呼叫相關的資料載入方法載入她(通常是透過DAO)。但這裡有幾個嚴重的問題:
1:資料值物件通常是簡單的物件,呼叫資料訪問方法破壞了她的簡單性,雖然是以“客戶程式設計師看不到”的方式進行的;
2:資料值物件通常是需要網路傳輸的,也就是通常是需要序列化的,那麼資料訪問方法的引入,增加了需要序列化的工作,同時,這些東西是不必要的。
所以,這種做法是否定了的。目前的做法(想法)是考慮關係,但是關係資料不進行預先載入,也不是系統機制自動完成的,而是客戶程式設計師呼叫相關的方法自己完成的,也就是,對於存在複雜關係的物件的值的載入可能是多個步驟的,而這些步驟可能來自不同的物件不同的方法。
更好的,我可能是希望是系統自動化完成的,也就是我最初的想法是系統自動的完成的。但是,我的水平還不夠,我不會 物件方法的攔截和自動化的載入(動態的或者靜態的,但這些概念不是很清楚,涉及到了AOP等吧??)。這些技術可能涉及到動態代理的實現,但是,我沒有做過對於產品不是好的選擇,也稍微破壞了系統簡潔的定位,所以希望大家給我一些意見和看法。
相關文章
- “懶”的妙用——淺析圖片懶載入技術
- 請教這個應用技術如何實現?
- 火山引擎DataLeap資料血緣技術實現與具體用例
- 圖片懶載入實現
- VIM Lazy Load 懶載入/延遲載入技術
- 圖片懶載入js實現JS
- 滾動載入圖片(懶載入)實現原理
- 手把手實現圖片懶載入+封裝vue懶載入元件封裝Vue元件
- 實現圖片懶載入(throttle, debounce)
- [譯] 原生實現圖片懶載入
- React如何實現圖片懶載入React
- 實現圖片懶載入(Lazyload)
- TabLayout+ViewPager+fragment實現懶載入TabLayoutViewpagerFragment
- TabLayout+ViewPager+Fragment懶載入實現TabLayoutViewpagerFragment
- 圖片懶載入 與 下拉載入更新資料
- 實現圖片懶載入的三種方式
- 【MySQL】刪除大量資料的具體實現MySql
- 現代化懶載入的方式
- 小說APP原始碼的圖片載入方式,懶載入和預載入的實現APP原始碼
- 請教分散式事務的具體處理:急!!!!分散式
- 多層巢狀後的 Fragment 懶載入實現巢狀Fragment
- vue12-ElementUI tree元件懶載入的實現VueUI元件
- Fragment 懶載入實踐Fragment
- 前端開發-- Webpack 程式碼分割和懶載入技術前端Web
- 深入理解React:懶載入(lazy)實現原理React
- 在 Swift 中使用閉包實現懶載入Swift
- 記憶體虛擬化技術,具體的實現方法有哪兩種?記憶體
- 基於react的lazy-load懶載入實現React
- 原生JS實現最簡單的圖片懶載入JS
- 原生 JS 實現最簡單的圖片懶載入JS
- 懶載入
- Vue 的懶載入Vue
- Vue實現一個圖片懶載入外掛Vue
- 30行Javascript程式碼實現圖片懶載入JavaScript
- 微信小程式--實現圖片懶載入(lazyload)微信小程式
- python 實現類屬性的懶載入裝飾器Python
- Angular效能優化實踐——巧用第三方元件和懶載入技術Angular優化元件
- 請教DAO和DAOFactory的實現