परफ़ॉर्मेंस

Perl के लिए क्लाइंट लाइब्रेरी, Google Ads API के साथ इंटरैक्शन को आसान बनाती है, जिसमें आपको बहुत कम कॉन्फ़िगरेशन करना होता है. हालांकि, इसकी परफ़ॉर्मेंस इस बात पर निर्भर करती है कि लाइब्रेरी का इस्तेमाल और उसे कैसे इंटिग्रेट किया गया है.

ज़्यादातर सबसे सही तरीके सभी भाषाओं पर लागू होते हैं. इस गाइड में उन तरीकों के बारे में बताया गया है जो खास तौर पर Perl के लिए हैं.

आपके आवेदन की प्रोफ़ाइल बनाई जा रही है

सीपीयू और मेमोरी, दोनों के इस्तेमाल के लिए अपने ऐप्लिकेशन की प्रोफ़ाइल बनाएं, ताकि परफ़ॉर्मेंस की समस्याओं की पहचान की जा सके. Devel::NYTProf एक बेहतरीन सुविधा-संपन्न Perl सोर्स कोड प्रोफ़ाइलर है. इसे एक्सप्लोर किया जा सकता है.

पर्ल वर्शन

नियमित तौर पर, Perl के नए वर्शन पर अपग्रेड करना एक अच्छा तरीका है, क्योंकि आम तौर पर इसकी परफ़ॉर्मेंस बेहतर होती है. इस पेज पर लाइब्रेरी के वर्शन और लाइब्रेरी के लिए ज़रूरी कम से कम वर्शन के बारे में जानने के लिए, यहां जाएं.

लॉगिंग

बहुत ज़्यादा डेटा लॉग करने पर, एक्ज़ीक्यूशन में लगने वाला काफ़ी समय लग सकता है और मेमोरी कम खर्च हो सकती है. किसी भी कोड के प्रोडक्शन के लिए, हमारा सुझाव है कि आप लॉगिंग लेवल को WARN पर सेट करें.

खास जानकारी और जानकारी इकट्ठा करने वाले टूल के कॉन्फ़िगरेशन के बारे में ज़्यादा जानकारी के लिए, लॉगिंग गाइड देखें.

Search या SearchStream का तरीका

Google Ads API, ऑब्जेक्ट को फिर से पाने के दो तरीके उपलब्ध कराता है -- Search (जिसमें पेज पर नंबर डालने की प्रक्रिया का इस्तेमाल किया जाता है) और SearchStream (जिसमें स्ट्रीमिंग का इस्तेमाल किया जाता है). SearchStream, Search तरीके की तुलना में बेहतर परफ़ॉर्मेंस देता है. हालांकि, कुछ मामलों में Search तरीके का इस्तेमाल भी किया जा सकता है.

इन दोनों तरीकों के बारे में ज़्यादा जानने के लिए यहां जाएं.

एचटीटीपी टाइम आउट

Perl क्लाइंट लाइब्रेरी से क्लाइंट लेवल पर, एचटीटीपी टाइम आउट सेट करने का एक प्लैटफ़ॉर्म मिलता है:

my $api_client = Google::Ads::GoogleAds::GoogleAdsClient->new({
  # Set HTTP timeout to 5 minutes.
  http_timeout   => 300
});

डिफ़ॉल्ट वैल्यू, Constants.pm में DEFAULT_HTTP_TIMEOUT सेटिंग के आधार पर सेट होती है. अगर एपीआई कॉल के लिए, ज़्यादा से ज़्यादा समयसीमा को कम समय में लागू करना है, तो कम वैल्यू सेट करें.

टाइम आउट की अवधि को दो घंटे या उससे ज़्यादा पर सेट किया जा सकता है. हालांकि, एपीआई अब भी लंबे समय से चल रहे अनुरोधों का समय खत्म कर सकता है और DEADLINE_EXCEEDED गड़बड़ी दिखा सकता है. अगर आपको यह गड़बड़ी मिलती है, तो अनुरोध को बांटें और उन हिस्सों को साथ-साथ लागू करें. ऐसा करने से, लंबे समय से चल रहे अनुरोध के काम न करने की समस्या से बचा जा सकता है. रिकवर करने का सिर्फ़ एक ही तरीका है कि आप शुरुआत से ही अनुरोध को फिर से ट्रिगर करें.