การเพิ่มประสิทธิภาพ rsync สำหรับการถ่ายโอนไฟล์ขนาดใหญ่ได้อย่างรวดเร็ว


19

นี่คือสิ่งที่ฉันต้องการ:

  • Rsync daemon ทำงานบนเซิร์ฟเวอร์ต้นทาง เซิร์ฟเวอร์ปลายทางดึง rsync ดังต่อไปนี้:
    rsync -ptv rsync: // source_ip: document / source_path / *. abc destination_path /
  • ไฟล์ไบนารีขนาดใหญ่ (3 GB ถึง 5 GB) จะถูกคัดลอกจากเครื่องต้นทางไปยังปลายทางผ่าน LAN ดังนั้นไม่จำเป็นต้องเข้ารหัส / ถอดรหัส ดังนั้นอย่าใช้ SSH เครื่องปลายทางเชื่อมต่อโดยตรงกับ rsync daemon
  • โฟลเดอร์ปลายทางจะว่างเปล่าเสมอก่อนที่จะดึง rsync ดังนั้นฉันจึงไม่ต้องกังวลกับการอัพเดตไฟล์บางไฟล์แบบมีเงื่อนไข Rsync pull จะสร้างไฟล์ใหม่ที่ปลายทางเสมอ (ไม่อัปเดต) ดังนั้นฉันไม่ต้องการ rsync ในการคำนวณผลรวมตรวจสอบ

ฉันไม่พอใจกับปริมาณของ CPU ที่ rsync ใช้เมื่อสิ้นสุดการรับหรือไม่ ตัวเลือก rsync ใดจะช่วยให้ฉันเพิ่มประสิทธิภาพการใช้งาน rsync ในกรณีที่อธิบายไว้ข้างต้น สิ่งที่ฉันกังวลคือ rsync อาจทำมากกว่าที่ฉันต้องการ rsync ตรวจสอบไฟล์ ฉันไม่ต้องการสิ่งนั้น

ยังต้องการที่จะเห็นการปรับปรุงความเร็ว

เปลี่ยนขนาดบล็อกปิดการใช้งาน checksum ฯลฯ จะช่วยได้อย่างไร


อย่าใช้ rsync หากไม่มีเดลตาสที่จะถ่ายโอน
womble

3
@ womble: เครื่องมืออะไรที่ฉันควรใช้แล้ว แนะนำ Rsync ที่นี่ - serverfault.com/questions/384467/…
Varun

netcat หรือ scp ที่มีรหัสศูนย์
womble

3
Scp ด้วยตัวเลขศูนย์? คุณแน่ใจหรือว่า scp รองรับ null cipher คุณช่วยยกตัวอย่างหนึ่งตัวหรือชี้ให้ฉันไปยังแหล่งข้อมูลที่เกี่ยวข้องได้ไหม
Varun

คำตอบ:


25

ดูเหมือนว่าคุณอาจต้องการดู--whole-fileหรือ-Wเปลี่ยน สิ่งนี้เปิดใช้งานตามค่าเริ่มต้นหาก rsync กำลังทำสำเนาระบบไฟล์ในเครื่อง แต่ฉันคิดว่าเอกสารแนะนำให้ใช้ถ้าความเร็ว LAN สูงและซิงค์ผ่านเครือข่าย

โดยพื้นฐานแล้วมันจะปิดอัลกอริทึมเดลตา rsync และเพียงแค่ถ่ายโอนไฟล์ทั้งหมดหากเชื่อว่ามันแตกต่างกัน

คุณไม่ควรจะต้องกังวลเกี่ยวกับ Checksumming -cจนกว่าคุณจะบังคับ ตามค่าเริ่มต้นมันจะดูเวลาที่แก้ไขล่าสุดและขนาดไฟล์และถือว่าไฟล์นั้นแตกต่างกันหากค่าเหล่านั้นแตกต่างกัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.