मैं एक प्रोजेक्ट कर रहा हूं जहां मुझे 1s से कम लेने के लिए सभी API कॉल की आवश्यकता है, लेकिन मैं प्रत्येक रूट के लिए पहली कॉल के साथ एक समस्या का सामना कर रहा हूं जो निम्नलिखित लोगों की तुलना में धीमी है।
वर्तमान में / लॉगइन करने के लिए पहला कॉल 3.6s लेता है और अगले वाले सभी अन्य मार्गों के लिए 170ms और समान लेते हैं।
मुझे पता चला -XX:+TraceClassLoadingकि पहली कॉल पर, कक्षाओं को मेमोरी में लोड किया गया था और इसके कारण प्रदर्शन समस्या हुई।
हालाँकि मुझे स्टार्ट अप में सभी कक्षाओं को लोड करने का एक आसान तरीका नहीं मिला और प्रत्येक नई सेवा के लिए, मुझे ApplicationRunner में वार्म अप कॉल जोड़ने की आवश्यकता है।
क्या किसी के पास स्प्रिंगबूट एप्लिकेशन की कक्षाओं को स्वचालित रूप से लोड करने या इसके सभी मार्गों को गर्म करने का कोई समाधान है?
invokedynamicऔर हम जानते हैं कि संकल्प उन लोगों के लिए पहली कॉल पर धीमा है (हमारे पास ऐसी हजारों कॉल हैं, जो इस पहली कॉल के बिना दसियों सेकंड तक जमा होती हैं)।