मेरे पास एक स्प्रिंग बूट रीस्ट एप्लिकेशन है जो ओरेकल डेटाबेस से जुड़ा है। हम JDbTemplate का उपयोग करके JDBC का उपयोग कर रहे हैं। Oracle डेटाबेस गुण इन 3 application.properties सेटिंग्स के माध्यम से प्राप्त किए जाते हैं:
spring.datasource.url
spring.datasource.username
spring.datasource.password
यह एप्लिकेशन HikariCP का उपयोग कर रहा है। HikariCP वेबसाइट से, मुझे पता चला है कि यह पूल एग्जिपडेस्टेमेंट को कैश नहीं करता है क्योंकि ऐसा करने के लिए JDBC ड्राइवर सबसे अच्छा सेटअप है।
अब, मैं यह सुनिश्चित करने के लिए कहां और क्या निर्दिष्ट करूंगा:
कि ओरेकल JDBC ड्राइवर (ojdbc7.jar) रेडीस्टेडमेंट को कैश करता है। क्या तैयारी करने की संख्या को अनुकूलित करने का एक तरीका है कि वह कैश कर सके।
से https://howtodoinjava.com/java/jdbc/best-practices-to-improve-jdbc-performance/ हम देख
सुनिश्चित करें कि आपका डेटाबेस अधिकतम पैकेट आकार पर सेट है और ड्राइवर उस पैकेट के आकार से मेल खाता है। बड़े परिणाम सेट लाने के लिए, यह ड्राइवर और सर्वर के बीच भेजे गए / प्राप्त कुल पैकेटों की संख्या को कम कर देता है।
उपरोक्त के अनुसरण में, किन चरणों की आवश्यकता है
- ओरेकल डीबी सर्वर पैकेट आकार खोजें
- यदि ओरेकल डीबी सर्वर अधिकतम पैकेट आकार पर सेट है, तो उसे खोजें
- ओरेकल JDBC ड्राइवर (ojdbc8.jar) पैकेट आकार निर्धारित करें।
किसी भी अन्य (ओरेकल) JDBC प्रदर्शन अनुकूलन टिप की सराहना की जाएगी।