Rsync मेरे लिए कई प्रक्रियाएँ क्यों बनाता है?


21

मैं एक मशीन में एक फ़ोल्डर से दूसरे फ़ोल्डर में बैकअप के लिए निम्नलिखित क्रॉन स्टेटमेंट का उपयोग कर रहा हूं:

19 21 * * * root  rsync -ac --delete /source/folder /dest/folder

जब मैं उपयोग करता हूं pstree, तो मैं क्रोन को तीन प्रक्रियाओं में कांटा जाता हूं

 ├─cron───cron───rsync───rsync───rsync

तथा ps

 9972 ?        Ds     1:00 rsync -ac --delete /source/folder /dest/folder
 9973 ?        S      0:29 rsync -ac --delete /source/folder /dest/folder
 9974 ?        S      0:09 rsync -ac --delete /source/folder /dest/folder

तीन प्रक्रियाएँ क्यों हैं? क्या मैं केवल एक तक ही सीमित रह सकता हूं?


तुम क्यो फिकर करते हो? क्या यह किसी भी प्रदर्शन की समस्या पैदा कर रहा है?
EEAA

2
हां, मेरे सर्वर के प्रदर्शन को प्रभावित करते हैं और वे काफी कुछ संसाधन का उपयोग करते हैं
रयान

जवाबों:


24

http://rsync.samba.org/how-rsync-works.html

रुपीस भारी रूप से पाइपलाइज्ड है। इसका मतलब यह है कि यह उन प्रक्रियाओं का एक समूह है जो (बड़े पैमाने पर) अप्रत्यक्ष तरीके से संवाद करता है। एक बार फ़ाइल सूची साझा करने के बाद पाइपलाइन इस तरह व्यवहार करती है:
जनरेटर → प्रेषक → रिसीवर

जनरेटर का आउटपुट प्रेषक के लिए इनपुट है और प्रेषक का आउटपुट रिसीवर के लिए इनपुट है। प्रत्येक प्रक्रिया स्वतंत्र रूप से चलती है और केवल तभी देरी होती है जब पाइपलाइन स्टाल होती है या जब डिस्क I / O या CPU संसाधनों की प्रतीक्षा होती है।

आप एक स्थानीय rsync चला रहे हैं (स्रोत और गंतव्य स्थानीय फ़ाइल सिस्टम हैं) इसलिए तीनों प्रक्रियाएँ वहाँ चलेंगी।
ऐसा कुछ भी नहीं है जो आप कर सकते हैं, यह डिजाइन द्वारा है।


8
आप प्रक्रियाओं की संख्या को सीमित नहीं कर सकते, लेकिन आप उपयोग किए गए बैंडविड्थ को सीमित कर सकते हैं । मुझे लगता है कि उसकी मशीन को rsync पढ़ने और एक ही डिस्क / ब्लॉक डिवाइस पर लिखने से भरा हुआ है। '--Bwlimit' विकल्प का उपयोग करने से इस मामले में मदद मिल सकती है।
14
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.