मैं यहां एक अधिकतम थ्रूपुट के मुद्दे पर चल रहा हूं और कुछ सलाह की जरूरत है जिस पर मेरे घुटनों को ट्यून करना है। हम बैकअप वितरण के लिए एक 10Gbit फाइलरवर चला रहे हैं। यह LSI MegaRAID कंट्रोलर पर दो डिस्क S-ATA2 सेटअप है। सर्वर को 24gig मेमोरी भी मिली।
हमें अपने अंतिम अपलोड किए गए बैकअप को अधिकतम थ्रूपुट के साथ मिरर करने की आवश्यकता है।
हमारे "हॉट" बैकअप के लिए RAID0 हमें लगभग 260 एमबी / सेक राइट और 275 एमबी / सेकंड रीड देता है। 20GB आकार के साथ एक परीक्षण किया गया tmpfs हमें 1GB / sec के आसपास देता है। इस तरह के थ्रूपुट की हमें जरूरत है।
अब मैं लिनक्स की वर्चुअल मेमोरी सबसिस्टम को आखिरी अपलोड की गई फाइलों को डिस्क में लिखने के बिना मेमोरी में यथासंभव लंबे समय तक कैश करने के लिए ट्यून कर सकता हूं (या इससे भी बेहतर: डिस्क पर लिखना और उन्हें मेमोरी में रखना)?
मैं निम्नलिखित sysctls को सेटअप करता हूं, लेकिन वे हमें वह थ्रूपुट नहीं देते जिसकी हम अपेक्षा करते हैं:
# VM pressure fixes
vm.swappiness = 20
vm.dirty_ratio = 70
vm.dirty_background_ratio = 30
vm.dirty_writeback_centisecs = 60000
इस सिद्धांत को हमें I / O को कैशिंग करने के लिए 16GB देना चाहिए और इसके लिखे जाने तक कुछ मिनट तक प्रतीक्षा करनी चाहिए। फिर भी जब मैं सर्वर को बेंचमार्क करता हूं तो मुझे लेखन पर कोई प्रभाव नहीं पड़ता है, थ्रूपुट नहीं बढ़ता है।
मदद या सलाह की जरूरत है।