600 अनुरोधों हर 600 सेकंड औसत पर 1 प्रति सेकंड है।
बहुत तेज़ नहीं!
1) आपकी कंपनी के आकार और चोरी के आधार पर, मैं यह देखने के लिए एफबी के साथ जांच करता हूं कि आप अपने लिए उठाई गई सीमा प्राप्त कर सकते हैं या नहीं।
2) आप डेलएड जॉब के साथ रह सकते हैं, पहिया को फिर से आविष्कार करने की आवश्यकता नहीं है। आपको केवल शेड्यूलर को बदलने की जरूरत है।
मेरी विलंबित जॉब स्थापना में, मैं नौकरियों को पुनः प्रयास करने के लिए बस समय निर्धारित करने के बजाय "run_at" कॉलम का उपयोग करता हूं - मैं इसे पहली बार नौकरी चलाने के लिए भी उपयोग करता हूं। आप अपनी नौकरियों को कम करने के लिए इसका भी उपयोग कर सकते हैं।
# added run_at param
# eg Delayed::Job.enqueue NewsletterJob.new('lorem ipsum...'), 0,
# Delayed::Job.db_time_now + 15.minutes
def self.enqueue(object, priority = 0, run_at = nil)
unless object.respond_to?(:perform)
raise ArgumentError, 'Cannot enqueue items which do not respond to perform'
end
Job.create(:payload_object => object, :priority => priority,
:run_at => run_at)
end
अपने लक्ष्य के लिए, मैं पिछली बार एक अमेरिकन प्लान API कॉल कतारबद्ध किया गया था का ट्रैक रखने होता है, और एक समय run_at के बगल में एक अनुसूची:
DelayedJob फ़ाइल job.rb में बदली गई कम से कम एक सेकंड अधिक।
लाभ: आप एफबी एपीआई कॉल के साथ अन्य, गैर-एफबी कार्यों को अंतःस्थापित करने में सक्षम होंगे।
स्रोत
2011-05-05 00:38:59
आपके प्रश्न का उत्तर हल है, तो जवाब देने के लिए अगले चेक मार्क की जाँच करके यह "स्वीकार" करने के लिए याद है। –
"मैं एक ऐप बना रहा हूं जो फेसबुक ग्राफ एपीआई को बहुत मार देगा। मैंने सीखा है कि उनके पास हर 600 सेकंड में 600 अनुरोधों की दर सीमा है।" आपको यह जानकारी कहां मिली और यह कितना विश्वसनीय है? बहुत धन्यवाद, वेस –