[發明專利]一種數據庫操作框架、方法及系統在審
| 申請號: | 202110002124.3 | 申請日: | 2021-01-04 |
| 公開(公告)號: | CN112699150A | 公開(公告)日: | 2021-04-23 |
| 發明(設計)人: | 郭仁康;周玉生;馮哲 | 申請(專利權)人: | 中國銀聯股份有限公司 |
| 主分類號: | G06F16/2455 | 分類號: | G06F16/2455;G06F16/25;G06F9/48;G06F11/30 |
| 代理公司: | 北京市中倫律師事務所 11410 | 代理人: | 鐘錦舜 |
| 地址: | 201203 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據庫 操作 框架 方法 系統 | ||
1.一種數據庫操作框架,其特征在于,包括:
數據庫連接池,其包括多個預設的數據庫連接,被配置為響應于讀服務線程和/或寫服務線程發送的連接請求將所述數據庫連接的使用權交給讀服務線程和/或寫服務線程;
讀服務線程池,其包括多個所述讀服務線程,被配置為用于通過輪詢至少一個應用程序創建的讀寫消息隊列以獲取讀操作消息,根據所述讀操作消息從所述數據庫連接池中獲取數據庫連接以執行數據庫讀操作;
寫服務線程池,其包括多個所述寫服務線程,被配置為用于通過輪詢所述至少一個應用程序創建的讀寫操作消息隊列以獲取寫操作消息,根據所述寫操作消息從所述數據庫連接池中獲取數據庫連接以執行數據庫寫操作。
2.根據權利要求1所述的框架,其特征在于,所述數據庫操作框架還包括:
連接池監控線程,被配置為用于對所述數據庫連接池的多個數據庫連接進行監控;
其中,當監控到所述數據庫連接池中的數據庫連接的數量比配置信息少時,使所述數據庫連接池創建新的數據庫連接;當監控到所述數據庫連接池中存在空閑狀態維持超過預設時間的數據庫連接時,使所述數據庫連接池釋放數據庫連接。
3.根據權利要求1所述的框架,其特征在于,所述框架還包括:
框架清理工具,用于當所述數據庫操作框架異常或所述應用程序異常退出時,對所述數據庫操作框架的主服務使用到的消息隊列和/或連接資源進行清理和/或事務回滾和/或連接釋放操作;以及,
框架查看工具,用于在所述數據庫操作框架運行期間即時查看消息隊列、數據庫連接池的狀態信息。
4.根據權利要求1所述的框架,其特征在于,所述數據庫連接池被配置為還用于執行:
響應于第一預設條件而創建新的數據庫連接;以及,響應于第二預設條件而釋放所述讀服務線程和/或寫服務線程處占用的數據庫連接。
5.根據權利要求1所述的框架,其特征在于,所述數據庫連接池被配置為還用于:
A、接收所述讀/寫服務線程發送的連接請求;
B、判斷所述數據庫連接池是否包括空閑數據庫連接,其中,若所述數據庫連接池包含所述空閑數據庫連接,則向所述讀/寫服務線程分配所述空閑數據庫連接;
C、若所述數據庫連接池不包含所述空閑數據庫連接,則進一步判斷所述數據庫連接池是否已經達到了最大連接限制,其中,若所述數據庫連接池未達到所述最大連接限制,則創建新的數據庫連接,并向所述讀/寫服務線程分配新創建的所述數據庫連接;
D、若所述數據庫連接池達到最大連接限制,則在等待之后進一步判斷所述連接請求是否超時,若所述連接請求超時,則向所述讀寫服務線程返回應答異常信息;若所述連接請求未超時,則重復執行步驟B~D。
6.根據權利要求5所述的框架,其特征在于,在將所述數據庫連接的使用權交給讀/寫服務線程之后,所述數據庫連接池被配置為還用于:
E、接收所述讀/寫服務線程發送的釋放連接請求;
F、判斷所述數據庫連接池是否鎖空閑,其中,若所述數據庫連接池鎖空閑則釋放數據庫連接;
G、若所述數據庫連接池并非鎖空閑,則在等待之后進一步判斷所述釋放連接請求是否超時,其中,若所述釋放連接請求超時則向所述讀/寫服務線程返回應答異常信息,若所述釋放連接請求未超時,則重復執行步驟F~G。
7.根據權利要求1所述的框架,其特征在于,所述讀服務線程池被配置為還用于:
當從所述至少一個應用程序創建的狀態消息隊列中獲取所述應用程序廣播的讀通知時,所述讀服務線程池中的各個讀服務線程輪詢所述讀寫消息隊列,以競爭方式獲取所述應用程序發送的所述讀操作消息,所述讀操作消息包括目標讀數據庫名稱和讀SQL語句;
所述讀服務線程根據所述讀操作消息從所述數據庫連接池中獲取數據庫連接,基于所述數據庫連接對所述目標讀數據庫執行所述讀SQL語句,并從所述目標讀數據庫獲取讀數據,將獲得的所述讀數據返回所述讀寫消息隊列,以使所述應用程序獲得所述讀數據;
所述讀服務線程在所述獲取讀數據完成之后生成讀完成消息,并將所述讀完成消息發送至所述讀寫消息隊列,之后所述讀服務線程主動釋放所述數據庫連接。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國銀聯股份有限公司,未經中國銀聯股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110002124.3/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種用于鋼琴的保護裝置
- 下一篇:一種多功能產科護理用康復床





