मैं कई सैकड़ों लॉग फ़ाइलों को संसाधित करने के लिए एक स्क्रिप्ट लिखने के लिए आरएक्सजेएस का उपयोग करने की कोशिश कर रहा हूं, जिनमें से प्रत्येक लगभग 1 जीबी है। स्क्रिप्ट के कंकाल कोडflatMap की सहमति को सीमित कैसे करें?
तरहRx.Observable.from(arrayOfLogFilePath)
.flatMap(function(logFilePath){
return Rx.Node.fromReadStream(logFilePath)
.filter(filterLogLine)
})
.groupBy(someGroupingFunc)
.map(someFurtherProcessing)
.subscribe(...)
काम करता है, लेकिन लगता है कि सभी लॉग फ़ाइलों के छानने कदम समवर्ती शुरू कर देंगे लग रहा है। हालांकि, फ़ाइल सिस्टम आईओ प्रदर्शन परिप्रेक्ष्य से, एक फ़ाइल के बाद एक फ़ाइल को संसाधित करना बेहतर होता है (या कम से कम एक ही समय में सभी सैकड़ों फाइलें खोलने के बजाय कुछ फ़ाइलों को समेकन सीमित करने के लिए)। इस संबंध में, मैं इसे "कार्यात्मक प्रतिक्रियाशील तरीके" में कैसे कार्यान्वित कर सकता हूं?
मैंने शेड्यूलर के बारे में सोचा था लेकिन यह पता नहीं लगा सकता कि यह कैसे मदद कर सकता है।
मैं एक ही सवाल है, लेकिन Rx.NET साथ की है। क्या यह संभव है? http://stackoverflow.com/questions/37345516/limiting-concurrent-requests-using-rx-and-selectmany – SuperJMN