在我們的項目中,我們想使用高速緩存依賴關係。經過一番搜索,我發現它只是用於Sql Server,我們應該爲它編寫自己的高速緩存類。有人試過以前是什麼?對Oracle表設置依賴關係的最簡單方法是什麼?我們使用Oracle 11g和.net 2008,感謝幫助如何設置依賴關係到Oracle數據表
0
A
回答
1
Oracle允許您使用dbms_alert package實現通知方案。如果谷歌DBMS_ALERT,你會發現許多網頁給你如何使用它的例子,但基本上它涉及到3件事情:
你叫dbms_alert.raise(與你選擇的標籤),當你想客戶端將被通知更改(例如,在插入/更新/刪除您需要緩存依賴項的表的觸發器中)。
客戶端將保持一個連接,它們已經調用了dbms_alert.register函數(註冊了特定的標籤)。
在任何時候,客戶端都可以調用dbms_alert.wait或.waitany;該函數將會阻塞(或者您可以提供超時),直到警報提出。對於您的情況,您可以在需要顯示您正在監控的數據之前立即通過短暫超時呼叫waitany。
等待函數運行良好 - 您不需要不斷地進行輪詢,除非您需要知道第二件事情已經改變。相反,當你準備使用你的緩存數據來確保它是最新的時,你可以檢查它們。另外,客戶在提交他們提交的事務之前不會收到通知。
dbms_alert的最大侷限性是隻有一個事務可以一次引發一個未提交的特定標籤警報。換句話說,如果事務A引發警報「foo」,那麼事務B將在引發「foo」時阻止,直到A回滾或提交,所以在可能需要很長時間的事務中使用警報通常不是一個好主意(除非阻止其他用戶是設計的一部分)。另外,如上所述,客戶端需要保持將用於檢查通知的連接。這可以是用於執行任何其他數據庫活動的相同連接,但是如果您正在編寫一個執行大量連接池/共享的應用程序,則需要有一個工具來保存連接需要保持緩存一致的時間長度。
0
相關問題
- 1. 數據庫依賴關係
- 2. 如何使用browserify和gulp設置依賴關係到jquery
- 3. 使用head.js設置依賴關係
- 4. Android偏好設置:依賴關係
- 5. 廚師:設置服務依賴關係
- 6. WCF項目設置和依賴關係
- 7. Android設置 - 反向依賴關係
- 8. 依賴關係的nuget依賴關係
- 9. PostgreSQL設計依賴關係樹沒有循環依賴關係
- 10. 如何覆蓋依賴關係的依賴關係?
- 11. 如何將log4j配置設置爲項目的依賴關係?
- 12. 如何處理依賴於配置的gem依賴關係?
- 13. 根據配置解決依賴關係
- 14. JavaWS配置依賴關係
- 15. 配置WCF依賴關係
- 16. 數據庫設計,one2many,表之間的雙向依賴關係
- 17. 如何找到列的依賴關係
- 18. pip如何找到依賴關係?
- 19. 我如何找到Java依賴關係?
- 20. 如何查找數據庫表的所有依賴關係?
- 21. 如何獲得表之間的數據庫依賴關係
- 22. Oracle數據庫管道管道中的Maven依賴關係
- 23. 依賴關係
- 24. Clearcase依賴關係列表
- 25. 子報表依賴關係
- 26. DB2依賴關係表
- 27. 找不到GNAT GPS依賴關係表
- 28. Maven - 如何從明確設置的url下載依賴關係
- 29. 如何在gnu中設置交叉目錄依賴關係make
- 30. 如何在TFS上設置CI/CD - 導入依賴關係?