李妍青,陳建,楊秀芝
(福州大學物理與信息工程學院,福建福州 350116)
隨著互聯網業務的快速發展,微博、淘寶網、支付寶等應用日益普及.當數據量達到幾十萬甚至幾千萬時,常會出現查詢速度慢、用戶等待時間長等瓶頸問題.因此,對數據庫性能優化顯得十分重要[1].MySQL具有開源、易用、安全可靠等優勢[2],深受許多中小型業務應用者的喜愛.在TechTarget發起的2012年中國數據管理優先度調查中顯示,有45.5%的用戶表示愿意遷至MySQL數據庫平臺[3].
目前,設計方法主要有兩種:單線程操作MySQL連接和多線程同時操作一個MySQL連接.這兩種方法均具有較大的局限性:前者主線程必須等待數據返回后才能繼續執行其他業務邏輯,執行效率低;而后者串行數據過于龐大且多個線程同時競爭一個MySQL連接,響應速度慢.為更好地滿足大數據量操作需求,運用分層架構設計理念,并結合連接池、多線程等技術進行優化設計,從而達到提高業務查詢效率,便于移植、擴展和維護的作用.
目前許多數據庫開發應用過程中,業務應用層與數據庫底層緊密藕合,業務應用層直接調用數據庫連接和更新等API函數,這要求用戶必須熟悉相關的API函數.為了讓MySQL底層操作透明化、實現代碼和其它資源的共享、易于更新底層各個模塊而不影響MySQL應用業務,采用動態鏈接庫[4](dynamic link library,簡稱DLL)方式,簡化應用業務邏輯和程序設計管理,具有模塊封裝特性.高內聚低耦合是判斷程序設計好壞的標準.與DLL簡單……