เทคนิคการใช้งานโคโลให้มีประสิทธิภาพ แรงรวดเร็ว ถูกวิธี

Posted by dream_admin in เนื้อหาทั่วไป on 14-01-2012

Tags: , , , , ,

มีคำถามมากมายเกี่ยวกับการใช้งานโคโลเช่น

  • เหตุใด ค่าอัพจึงได้น้อยจัง เรโช ไม่ถึง 0.1
  • โคโลไม่วิ่งเลย ดาวน์โหลด อัพโหลดอะไรได้แค่ไม่กี่ kb (เศร้าเลย)
  • ทำไมโหลดคนแรกเลย แต่ได้ค่าีuploadน้อย
  • ไฟล์ขนาดไหนที่เหมาะสม และได้ค่าratio uploadดี
  • อยากดูดไฟล์ซี่รี่ย์ที่ชอบ แต่มันใช้เวลานาน และมีไฟล์ที่น่าจะได้ค่าเรโชดีเข้ามาปล่อย ทำไงดี
  • ปล่อยไฟล์ยังไง ให้ได้ค่าอัพเยอะๆ
  • ทำมัยโหลดไฟล์แค่ 1 Gb เอง แต่ overload
  • โหลดหลายๆ ไฟล์พร้อมกันดีหรือไม่ ก็มันมีไฟล์มาใหม่พร้อมๆ กันเลยหนะ
  • ข้อห้ามที่ไม่ควรทำ เพราะอาจทำให้เกิด overload ไม่ได้ค่าอัพเลย
  • บางครั้งทำมัยโหลดของคนนี้ปล่อยได้ค่าอัพเยอะ แต่ไปโหลดของอีกคนขนาดพอๆ กัน ได้น้อยหว่า
  • เหตุใด โหลดไฟล์ใหญ่ขนาดหลาย Gb ไม่ overload แต่โหลดไฟล์เล็กๆ แค่ 1 Gb กลับ overload ได้
  • บางวันปล่อยดีจัง บางวันปล่อยไม่ได้เรื่องเลย (น่าแปลกมะ โคโลตัวเดิมแท้ๆ)

จริงๆ ยังมีคำถามอีกเยอะครับ แต่ผมจะอธิบายถึงหลักการบางอย่างก่อน ว่าอะไรบ้างที่เป็นปัจจัยที่เกี่ยวข้องบ้าง แล้วท่านก็สามารถจะนำหลักการไปพิจารณาเองได้ครับ

ปัจจัยที่เกี่ยวข้องมีดังนี้ครับ

  • จำนวน peer
  • ขนาด ไฟล์
  • จำนวนไฟล์ที่ท่านเขียนอ่านอยู่ทั้งหมด

จากปัจจัยข้างต้นนี้ครับมีส่วนเกี่ยวข้องคือ

ผลรวมของ จำนวน peer คูณด้วยจำนวนชิ้นส่วน ของทุกไฟล์ คือค่าโหลด (load) ที่ระบบการเขียนอ่านของ harddisk ต้องรับภาระทำงานให้ทัน โดยโปรแกรม ยูทอเร้นท์ (UTorrent) จะควบคุมการทำงานตรงนี้ โดยมี buffer การทำงาน (จากที่กล่าวไว้ตอนต้น) มีทั้ง buffer ในการอ่าน และ เขียน ดู tab ด้านล่างของโปรแกรมส่วนของ speed ลองคลิกดูนะครับ ส่วนของ show ให้ท่านลองเปลี่ยนเป็น disk statistics ครับ จะเห็น buffer (cache) ในการ อ่าน และ เขียนแยกกัน ( read statistics และ write statistics) ด้านการอ่านไม่มีปัญหาครับ เนื่องจากโปรแกรมจะปรับ buffer ที่หมาะสมให้ท่านเอง ปัญหาจะอยู่ที่ด้านการเขียน หาก buffer ตรงนี้เต็ม โปรแกรมจะสั่งหยุดการทำงานอื่นก่อน (ไม่รับแพคเกจชิ้นส่วนเพิ่ม เพราะเขียนไม่ทันแล้ว) และขึ้นคำว่า disk overload ให้ท่านเห็น แล้วโปรแกรมจะทยอยข้อมูลจาก buffer ลง harddisk ให้เสร็จก่อนจึงทำงานต่อครับ โดยการทำงานนี้ส่งผลกระทบถึงทุกๆ ไฟล์ของท่านเลยทีเดียว (ทุกไฟล์ที่ปล่อย seed อยู่เป็น Mb ของท่านจะลดลงเหลือเพียงไม่กี่ kb เท่านั้นเองครับ) คงไม่มีใครอยากให้เหตุการณ์แบบนี้เกิดขึ้นใช่มั้ยครับ

ท่านสามารถแก้ไขได้ โดยการรีบลดภาระ(load) ของโปรแกรมลง เช่น pause (หยุดชั่วคราว) หรือ stop ไฟล์อื่นๆ ไปก่อนเพื่อให้ โปรแกรมสามารถ นำ buffer ลงสู่ harddisk ให้เร็วที่สุด และป้องกันไม่ให้เกิดการ overload ต่อไปอีกด้วยการ จำกัดค่าความเร็วการดาวน์โหลด ให้น้อยลง เพื่อให้จำนวนข้อมูลที่ไหลเข้ามาเหมาะสมกับขนาด buffer

ครับ แน่นอนว่า ถ้าท่านดูแลโคโลของท่านไม่ให้เกิด overload ท่านจะได้ค่าอัพที่น่าพอใจกว่ามากมายครับ

ครับ ถึงจุดนี้ ผมขอกล่าวถึง โคโลประเภทเช่าเหมา และ แชร์ ครับ
ใน harddisk 1 ลูกนั้น ความเร็วในการเขียน จากที่กล่าวมาข้างต้น 30 Mb นั้น กรณีนี้คือท่านจะเขียนอย่างเดียว แต่โปรแกรมจะแบ่งเอาไปอ่านด้วยนะครับ ดังนั้น

สำหรับโคโลเหมาลูกจะตั้งความเร็วที่ 15-20 Mb ครับ เพื่อให้เขียนและอ่านได้ราบรื่น และแน่นอนว่า หากเอาความเร็วในการเขียนเพิ่มขึ้นมากเท่าไหร่ ท่านจะอ่านได้น้อยลงเท่านั้น(ปล่อยได้น้อย)

สำหรับกรณีโคโลแชร์ ถ้าแชร์ 2 คน ท่านก็ต้องหาร 2 (สมมุติว่า ใช้เท่ากันเลย ซึ่งเป็นไปไม่ได้ในความเป็นจริง) หรือถ้าใช้ 3 คน ก็ต้องหาร 3 ครับ และ ในเมื่อใช้ harddisk อยู่ร่วมลูกเดียวกัน ทุกอย่างต้องนำมารวมกันหมดไม่ว่า เขียน หรืออ่าน เป็นค่า load ของ harddisk ครับ และ ส่วนสำคัญมากคือด้านการเขียนนั่นเองครับ เพราะมันจะทำให้เกิด overload ก็จะทำให้ท่านอื่นๆ ที่ใช้งานร่วมใน harddisk ลูกนั้นมีผลกระทบทันที ปล่อยไม่ออก ทั้งที่ตัวเองก็ไม่ได้ overload ครับ

ดังนั้น ผมมีสไตล์การใช้งานมาแนะนำให้สำหรับแก้ไขปัญหาโคโลที่ แชร์ ดังนี้ครับ

  • เลือกไฟล์ที่ปล่อยได้ในระยะยาวกว่า
  • เลือกขนาดไฟล์ที่เล็กกว่า เนื่องจากท่านจะโดนจำกัดด้านความเร็วดาวน์โหลดให้แบ่งกันใช้ครับ ดังนั้น เวลาไฟล์ใหญ่ๆ แม้ว่าไปจับไฟล์นั้นก่อน แต่ท่านโหลดได้ช้ากว่า เช่าโคโลประเภทเหมาลูก ที่ไม่ได้จำกัดความเร็วดาวน์โหลด ท่านจะโดนแซงไป และ ในเมื่อท่านโหลดได้ช้ากว่า จำนวนชิ้นส่วนที่ท่านครอบครองไว้นั้นจะน้อยกว่า ผู้ที่โหลดได้มากกว่า โอกาศที่เค้าจะมีชิ้นส่วนของท่านนั้นแล้วมีมาก ท่านจะปล่อยให้กับเค้าได้น้อยกว่ามาก มีแต่จะรับค่าที่เค้าส่งมาให้ดาวน์โหลดมากกว่า เป็นเหตุให้ buffer ด้านการเขียนข้อมูล harddisk ไม่ทันจนเกิดการ overload ที่ได้อธิบายไปก่อนหน้านี้แล้วครับ (ยิ่งได้น้อยเข้าไปใหญ่เลย เหอๆ)
  • ค่อยๆ ทะยอยโหลดเข้ามาทีละไฟล์ (เพื่อไม่ให้เกิดภาระต่อ harddisk ที่ใช้งานมากเกินไป) แล้วปล่อยให้ยาวๆ โคโลแรง
  • โหลดไฟล์ที่น่าจะเป็นที่นิยม แต่ปล่อยโดยผู้ใช้ตามบ้านครับ อันนี้ จะไม่ทำให้ท่านเกิด overload แน่นอน และ ได้ค่าอัพจากจำนวนผู้มาโหลดมาก (ได้น้อยแต่ตัวคูณเยอะ)

หากท่านได้ทำตามที่ผมกล่าวนี้แล้ว ค่าอัพท่านจะได้แบบ นิ่งๆ คงที่ ตลอดทั้งวัน บางทีได้มากกว่าผู้ใช้ที่เหมาโคโลทั้งลูกด้วยซ้ำไปนะครับ ลองคิดดู นิ่งๆ 1-2M ทั้งวันทั้งคืน เยอะกว่า พวกได้ 10M ที่ได้แค่แป๊บเดียวแค่ไหนนะครับ
ซ้ำวิธีนี้ ไม่กระทบต่อผู้ใช้อื่นใน harddisk ลูกเดียวกับท่าน ต่างคนต่างช่วยกันครับ ได้เยอะด้วยกัน

แล้วหากท่านอยากปล่อยไฟล์หละ ก็ทำนองเดียวกัน ท่านอ่านข้างต้นมาแล้วคงพอเข้าใจ สมมุติ เลือกโหลดไฟล์ใหญ่ จากเวปเพื่อนบ้าน ผมก็ทำนายว่า หากมีโคโลเหมาลูกไปโหลดไฟล์เดียวกับท่าน ท่านจะเสร็จทีหลังไม่ได้ปล่อยแน่นอนครับ เป็นผมจะพิจารณาไฟล์ที่ขนาดเล็กกว่า เพราะโคโลเหมาลูกไม่ค่อยสนใจกับไฟล์ที่ขนาดเล็กหรอกครับ

ส่วนโคโลเหมาลูก ท่านต้องพิจารณาปัจจัยบางอย่างเช่นกันคือ

  • โหลดบิท ไฟล์ใหญ่ ทีละไฟล์ครับ ได้ค่าอัพมากกว่า โหลดหลายๆ ไฟล์ สาเหตุก็เพราะ ค่า load ที่ผมกล่าวไว้ข้างต้นหลายๆ ไฟล์ จะมีมากกว่ามาก ท่านอาจจะทำให้ harddisk เกิด overload แม้จำกัดความเร็วทั้งระบบ หรือทุกไฟล์แล้วก็ตาม และ ควร pause หรือ stop ไฟล์อื่นๆ ด้วย มีตัวอย่างที่ผมทดลองมาแล้วคือ ไม่หยุดงานอื่น ผมได้ค่าอัพรวม 3-5 Mb แต่พอ ผมหยุดงานอื่น ค่าอัพผมเพิ่มเป็น 15-20 Mb ทันที (หุหุ แตกต่างกันน่าดูเยย) อันนี้รวมถึงเวลาท่านปล่อยงานด้วยนะครับ
  • ท่านอาจต้องปรับความเร็วในการดาวน์โหลดบิทโคโล จะมีค่านึงที่เหมาะสม ลองปรับดูครับ บางทีปรับน้อยไป เราก็ได้น้อยกว่า ปรับให้มากขึ้นด้วยนะครับ สาเหตุก็เพราะว่า โปรแกรมยูทอเร็นท์(UTorrent) จะเลือกรับส่งกับผู้ที่มีประสิทธิภาพสูงก่อนครับ จนกว่าผู้นั้นจะตอบปฏิเสธ กลับมาเนื่องจากเต็มกำลังแล้ว แต่ปรับค่าดาวน์โหลดมากไป ท่านอาจเจอกับอาการ overload (ซึ่งแย่กว่าแบบปรับไว้น้อยซะอีก) หรือใกล้ถึงจุดที่จะ overload การทำงานของโปรแกรมท่านจะลดลง ไม่ได้ประสิทธิภาพที่ดี
  • หากท่านสังเกตุช่อง peer ให้ท่านดู % ของท่านครับ ว่าเกาะกลุ่มกันไปหรือไม่ โดยทั่วไป ผู้ที่เกาะกลุ่มนั้น จะได้ค่าอัพที่ดีกว่า เนื่องจากสุดท้ายโปรแกรมจะแลกเปลี่ยนกับผู้ที่ความเร็วใกล้เคียงกันก่อน (เพราะจะส่งผลต่อระบบโดยรวมให้เร็วแรงขึ้น)
  • หากไปเจอกับโคโลแรง ทำไงดี ทางเลือกของผมคือ เอา 90 % ยอมเสีย 10 % ครับ ทำไงอะเหรอครับ ก็คือ ตั้งความเร็วให้ต่ำกว่า ลงไปอีกเล็กน้อยครับ เค้าจะส่งไม่ออกเหมือนกันครับ เพราะเราไม่ยอมรับ (แหะๆ) ในขณะที่เค้าส่งน้อย เค้าก็มี แบนวิทด์(Bandwidth) ไว้สำหรับ ดาวน์โหลดบิทเยอะนี่ครับ เราก็จะได้ปล่อยออก แบบว่า ส่งเค้าไป ด้านหน้านั่นเลยครับ เราตามหลังแต่ได้เยอะมาตลอด จนเค้าเสร็จก่อนครับ โดยทั่วไปจะทิ้งเราไว้ที่ 10-20 % ครับ เอาหละตรงนั้น ก็ก้มหน้ารับไปครับ ได้มาตลอด ก่อนหน้านี้แย้วนิ 😛
  • วิธีการโหลดงานที่ได้ค่าอัพโหลดดีคือ ตั้งค่าตอนแรกในระดับที่ต่ำสักหน่อยครับ ทำให้โคโลของเรามีแบนวิทด์เหลือปล่อยได้แรง ทำให้โคโลอื่นจับโคโลเราครับ แล้วค่อยๆ ปรับเพิ่มขึ้นๆ ครับ ท่านจะได้เยอะทีเดียวครับ

การ pause แตกต่างกับการ stop อย่างไรบ้าง
มีข้อดี และข้อเสียครับ
การ pause เราจะยังคงติดต่อกับเวปบิต อยู่ครับ ว่าเรายังอยู่ แต่ยังไม่ว่าง และเมื่อกด pause การทำงานกับไฟล์นั้น จะค่อยๆ หยุดน้อยลงๆ ครับ ไม่ได้หยุดโดยทันทีทันใด
และจากที่กล่าวข้างต้น ข้อดีของการ pause คือ เมื่อท่านโหลดงานเสร็จ ท่านมา play ต่อ ท่านจะได้ pear มากกว่า และปล่อยต่อได้ทันทีครับ ไม่ต้องรอการ update จากเว็ปบิต(Web Bit)
และข้อเสียคือ มันไม่หยุดทันทีนี่แหละครับ ไฟล์ใหญ่ที่โหลดมาบางทีส่งมาแรง ก็เกิด overload ซะก่อนครับ (แย่เลย)
โดยทั่วไปสำหรับผมนิยม pause แต่ถ้าเห็นว่าไฟล์งานที่กำลังจะโหลดนั้นส่งแรงมาก ก็จะ stop แทนครับ

เอาหละครับ มาถึงจุดนี้ จะตอบคำถามข้างบนนะครับ

  • เหตุใด ค่าอัพจึงได้น้อยจัง เรโช ไม่ถึง 0.1
  • โคโลไม่วิ่งเลย ดาวน์โหลด อัพโหลดอะไรได้แค่ไม่กี่ kb (เศร้าเลย)
    เหตุการณ์นี้เกิดขึ้นก็คงมีกรณีเดียวครับ ท่านอาจไม่ทันได้ดู หรือไม่ได้รีโหมตไปดู เพราะว่า เกิด overload นั่นเองแหละครับ
  • ทำไมโหลดคนแรกเลย แต่ได้ค่าอัพน้อย
    อันนี้หลายเหตุผลหน่อยครับ แต่อย่างแรกน่าจะมากจาก โคโลท่านเป็นแบบแชร์ครับ อย่างที่สอง น่าจะมาจาก ท่านอาจไม่ได้ pause หรือ stop งานอื่นด้วย (แต่คนอื่นเค้าทำกานครับ หุหุ) อย่างที่สาม มาจากการตั้งค่าดาวน์โหลด ที่ไม่เหมาะสมนั่นเองครับ
  • ไฟล์ขนาดไหนที่เหมาะสม และได้ค่าอัพดี
    อันนี้แล้วแต่ว่า โคโลท่าน เป็นแบบเหมา หรือ แบบแชร์ครับ ท่านลองย้อนไปอ่านดู
  • อยากดูดไฟล์ซี่รี่ย์ที่ชอบ แต่มันใช้เวลานาน และมีไฟล์ที่น่าจะได้ค่าเรโชดีเข้ามาปล่อย ทำไงดี
    ตั้งค่าดาวน์โหลดสำหรับตัวซีรี่ย์ให้น้อยๆ ครับ
  • ปล่อยไฟล์ยังไง ให้ได้ค่าอัพโหลดเยอะๆ แรงๆ
    pause หรือ stop งานอื่นด้วยครับ
  • ทำไมโหลดไฟล์แค่ 1 Gb เอง แต่ overload
  • เหตุใด โหลดไฟล์ใหญ่ขนาดหลาย Gb ไม่ overload แต่โหลดไฟล์เล็กๆ แค่ 1 Gb กลับ overload ได้
    ไฟล์นี้น่าจะมี peer จำนวนมากครับ ทำให้ load มีค่าเยอะ
  • โหลดบิทหลายๆ ไฟล์พร้อมกันดีหรือไม่ ก็มันมีไฟล์มาใหม่พร้อมๆ กันเลยหนะ
    ไม่ดีแน่ครับ ได้ค่าอัพน้อยหงะ อิอิ เลือกไฟล์นึงละกัน
  • ข้อห้ามที่ไม่ควรทำ เพราะอาจทำให้เกิด overload ไม่ได้ค่าอัพเลย
    จากประสพการณ์ผมเคยเจอมาเหมือนกันครับ อย่างเช่น กำลังดูดปล่อยแรงโครตๆ เลย หันไปเห็นไฟล์นึง ขนาดใหญ่พอสมควร มันไม่ได้ปล่อยแระ ก็เลย ดันไปกดลบทิ้ง กำเลย overload (แงๆ)
    และ อีกอย่าง การจะลบไฟล์ใดๆ ควร stop ซะก่อนครับ แล้วค่อยลบ มิฉะนั้น harddisk ท่านอาจเพี้ยนได้ เด๋วเปงตัวแดงๆ หาว่าไม่เตือนนะครับ หุหุ
  • บางครั้งทำมัยโหลดของคนนี้ปล่อยได้ค่าอัพโหลดแรงเยอะ แต่ไปโหลดของอีกคนขนาดพอๆ กัน ได้น้อยหว่า
  • บางวันปล่อยดีจัง บางวันปล่อยไม่ได้เรื่องเลย (น่าแปลกมะ โคโลตัวเดิมแท้ๆ)
    การตั้งค่าดาวน์โหลดไม่เหมาะสมกะสถานการณ์ครับ คือ โคโลที่ดูดปล่อยอยู่ในขณะนั้น แรง ไม่แรงแค่ไหนด้วย และ จำนวน peer ที่เข้ามาร่วมกันในขณะนั้นด้วยครับ peer มากๆ ได้เยอะกว่าครับ เพราะปล่อยให้หลายคนกว่า

ครับ อ่านถึงตรงนี้ ลองไปทำดูนะครับ หวังว่าจะได้ค่าอัพโหลดดีๆ ได้ไฟล์ที่ต้องการ มีความเข้าใจในการใช้งานโคโลระดับสูงครับ