एक ब्लॉब पर ट्रिगर के साथ एक वेबजॉब में, मैं अपनी पुनः प्रयास संख्या का प्रबंधन करना चाहता हूं, क्योंकि मुझे अंतिम पुनर्प्रयास गणना में कुछ करने की आवश्यकता है, अगर मैं केवल एक कोशिश-पकड़ करता हूं तो मैं अपना पुनः प्रयास तंत्र खो दूंगा, और मैं नहीं कर सकता संदेश के जहर में जाने की प्रतीक्षा करें, क्योंकि बूँद में सभी नौकरियों के सभी संदेश बूँद को सुनकर एक ही कतार में चले जाते हैं और मुझे नहीं पता कि जहर संदेश कहाँ आते हैं जब तक कि मैं सभी कतार नहीं पढ़ लेता!

तो इस पुन: प्रयास की गिनती प्राप्त करने के लिए कोई विचार (यदि यह संभव है)?

0
Maroine Abdellah 12 सितंबर 2019, 12:12

1 उत्तर

सबसे बढ़िया उत्तर

आप "क्यू" कॉन्फ़िगरेशन में maxDequeueCount सेटिंग के माध्यम से अधिकतम संख्या में पुनर्प्रयासों को नियंत्रित कर सकते हैं। यह बूँद कार्यों को प्रभावित करता है क्योंकि पर्दे के पीछे एक नियंत्रण कतार का उपयोग आपके कार्यों के लिए बूँद भेजने के लिए किया जाता है।

और नीचे क्यू को कॉन्फ़िगर करने के लिए नमूना कोड है, वहां आप maxDequeueCount को कॉन्फ़िगर करने में सक्षम होंगे और डिफ़ॉल्ट संख्या 5 होनी चाहिए। यहां दस्तावेज़ लिंक है:क्यू स्टोरेज ट्रिगर कॉन्फ़िगरेशन

    static void Main()
{
    var builder = new HostBuilder();
    builder.ConfigureWebJobs(b =>
    {
        b.AddAzureStorageCoreServices();
        b.AddAzureStorage(a => {
            a.BatchSize = 8;
            a.NewBatchThreshold = 4;
            a.MaxDequeueCount = 4;
            a.MaxPollingInterval = TimeSpan.FromSeconds(15);
        });
    });
    var host = builder.Build();
    using (host)
    {

        host.Run();
    }
}
2
George Chen 12 सितंबर 2019, 09:24