วิธีใช้ Tencent Cloud CDN และ Object Storage (COS) เพื่อแก้ปัญหาการโหลดรูปภาพช้าและอัตราผลตอบแทนสูง

2026-05-15 阅读 29
1

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

ปฏิกิริยาแรกของนักพัฒนาหลายคนคือ "เพิ่มแบนด์วิดท์เซิร์ฟเวอร์" แต่ค่าแบนด์วิดท์หลายพันต่อเดือนนั้นต่ำมากในยุคของการประมวลผลแบบคลาวด์คำตอบมาตรฐานสำหรับปัญหานี้เป็นเพียงการรวมกันของหมัด:

Tencent Cloud Object Storage (COS) + เครือข่ายการกระจายเนื้อหา (CDN)

บทความนี้จะใช้ภาษาพื้นถิ่นและตรรกะเชิงปฏิบัติที่บริสุทธิ์เพื่อพาคุณไปกำหนดค่าสถาปัตยกรรมนี้ตั้งแต่เริ่มต้นเพื่อแก้ปัญหาการโหลดรูปภาพที่ติดขัดและอัตราการคืนสินค้าที่สูงโดยวิธีนี้จะช่วยให้คุณลดต้นทุนเซิร์ฟเวอร์ได้ถึง80%

1.ทำไมรูปภาพของคุณโหลดช้าจัง? (การถอดจุดปวด)

ก่อนที่จะเพิ่มประสิทธิภาพเรามาดูกันว่าเหตุใดโมเดล "เซิร์ฟเวอร์ hard-hard" แบบเดิมจึงล้มเหลว

ข้อจำกัดทางภูมิศาสตร์ (การส่งข้อมูลที่มีข้อบกพร่อง): เซิร์ฟเวอร์ของคุณอยู่ในปักกิ่งผู้ใช้ในเซินเจิ้นสามารถเข้าถึงได้และข้อมูลจะต้องครอบคลุมหลายพันกิโลเมตรหากเครือข่ายสั่นเล็กน้อยรูปภาพจะกลายเป็นนาฬิกาทราย "กำลังโหลด"

อัตราผลตอบแทนสูง (ไซต์หลักขาดอากาศหายใจพร้อมกัน): "แหล่งผลตอบแทน" หมายความว่าโหนด CDN ไม่มีแคชและไปที่เซิร์ฟเวอร์ไซต์ต้นทางของคุณเพื่อรับข้อมูลหากอัตราผลตอบแทนสูงถึง70%-80% CDN จะสูญเสียความหมายและเซิร์ฟเวอร์ของคุณจะยังคงถูกครอบงำด้วยการทำงานพร้อมกันที่สูงในทันที

คอขวดแบนด์วิดท์แบบสแตนด์อโลน: ภาพความละเอียดสูง2MB หากมีคน100คนเปิดหน้าเว็บเพื่อดาวน์โหลดในเวลาเดียวกันจะต้องใช้แบนด์วิดท์200MB ทันทีแบนด์วิดท์5Mbps และ10Mbps ของเซิร์ฟเวอร์ธรรมดาโดยทั่วไปจะเป็นอัมพาตในหนึ่งวินาที

แผนทำลายเกม: สถาปัตยกรรมการเชื่อมโยง COS CDN

COS (Object Storage): แทนที่เซิร์ฟเวอร์ภายในของคุณโดยเฉพาะเพื่อจัดเก็บรูปภาพขนาดใหญ่มีความสามารถในการอ่านและเขียนพร้อมกันสูงมากและต้นทุนการจัดเก็บต่ำมาก

CDN (Distribution Network): ซิงโครไนซ์รูปภาพใน COS ไปยังโหนดขอบหลายพันแห่งทั่วประเทศและทั่วโลกล่วงหน้าผู้ใช้ในกวางโจวรับภาพโดยตรงจากโหนดกวางโจวและผู้ใช้ในปักกิ่งรับภาพจากโหนดปักกิ่งและอัตราผลตอบแทนลดลงต่ำกว่า5%

2.ขั้นตอนแรก: การสร้างพื้นฐาน COS และความปลอดภัยของผู้มีอำนาจ

ก่อนอื่นเราต้องถ่ายโอนรูปภาพจากเซิร์ฟเวอร์ที่เปราะบางไปยัง COS ที่เสถียร

1.สร้างถังเก็บ (Bucket)

ลงชื่อเข้าใช้ Tencent Cloud Console ค้นหา "Object Storage COS" และคลิกเพื่อสร้างถังเก็บข้อมูล:

ชื่อ: แค่ตั้งชื่อที่จำง่าย (เช่น my-image-bucket)

ภูมิภาค: ขอแนะนำให้เลือกภูมิภาคเดียวกับเซิร์ฟเวอร์คลาวด์ของคุณ (CVM) หากเป็นการกระจายแบบคงที่ให้เลือกพื้นที่ที่ใกล้เคียงกับกลุ่มผู้ใช้หลักของคุณมากที่สุด

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

ผ่าน CDN ถัดไปเพื่อให้เกิดการป้องกันแปรงเครือข่ายสาธารณะ

2.อัปโหลดภาพทดสอบ

หลังจากสร้างเสร็จแล้วให้ป้อนถังเก็บข้อมูลและอัปโหลดภาพทดสอบสองสามภาพ (เช่น

Test.jpg

) บันทึกเส้นทางของมันณจุดนี้เนื่องจากเป็น "การอ่านและเขียนส่วนตัว" URL ของวัตถุที่คุณเข้าถึงโดยตรงจะได้รับแจ้ง

AccessDenied

(ปฏิเสธการเข้าถึง) ซึ่งแสดงให้เห็นว่ากลยุทธ์ด้านความปลอดภัยมีผลบังคับใช้

3.ขั้นตอนที่สอง: การกำหนดค่า CDN และแหล่งส่งคืนที่ไร้รอยต่อ (ขั้นตอนหลัก)

ต่อไปเราจะใส่ COS ด้วย "เกราะเร่งความเร็ว" ของ CDN

1.การเข้าถึงชื่อโดเมนที่เกี่ยวข้องกับ CDN

เข้าสู่คอนโซล Tencent Cloud CDN คลิก "การจัดการชื่อโดเมน"-> "เพิ่มชื่อโดเมน":

* ชื่อโดเมนแบบเร่งความเร็ว: กรอกชื่อโดเมนระดับที่สองที่คุณเตรียมไว้เช่น img.yourdomain.com

* ประเภทสถานีต้นทาง: เลือก "Tencent Cloud COS"

* ที่อยู่สถานีต้นทาง: ตรวจสอบถังเก็บข้อมูลที่คุณเพิ่งสร้างโดยตรงในเมนูแบบเลื่อนลง

2.เปิดใช้งาน "COS ส่วนตัว Barrel Appraisal" (ขั้นตอนสำคัญในการป้องกันการแปรงฟัน)

หลังจากเลือกไซต์ต้นทาง COS แล้วระบบจะแสดงตัวเลือกสีทอง: "การตรวจสอบแหล่งที่มา" หรือ "การตรวจสอบสิทธิ์ที่มีผลผูกพัน/การตรวจสอบถังส่วนตัว"

* ต้องติ๊กเพื่อเปิด!

* หลักการ: หลังจากเปิดแล้ว Tencent Cloud จะสร้างช่องเข้ารหัสโดยอัตโนมัติซึ่งมีเพียง CDN เท่านั้นที่รู้เพื่อไปที่ COS เพื่อรับภาพสำหรับผู้ใช้ทั่วไปพวกเขาสามารถเข้าถึงได้เฉพาะ

3.กำหนดค่า CNAME (ให้ชื่อโดเมนมีผล)

หลังจากเพิ่มชื่อโดเมนแล้ว Tencent Cloud จะให้ที่อยู่ CNAME ที่ลงท้ายด้วย .cdn.dnsv1.com

* ไปที่ผู้ให้บริการแก้ไขชื่อโดเมนของคุณ (เช่น Tencent Cloud DNSPod, Alibaba Cloud Resolution เป็นต้น) และเพิ่มระเบียน CNAME

* บันทึกโฮสต์กรอก img และกรอกที่อยู่ CNAME ที่คัดลอกไปยังค่าบันทึก

* รอ2-5นาทีการวิเคราะห์ทั่วโลกมีผล

4.ขั้นตอนที่สาม: จะบีบอัตราผลตอบแทนให้ถึงขีดจำกัดได้อย่างไร?

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

1.กฎการหมดอายุของโหนดแคช (ยิ่งนานยิ่งดี)

รูปภาพเป็นของ "ทรัพยากรแบบคงที่" เมื่อเผยแพร่แล้วจะไม่ค่อยมีการแก้ไข

* ใน "การกำหนดค่าแคช" ของ CDN ให้เพิ่มกฎ

* ประเภทเนื้อหา: คำต่อท้ายไฟล์

* คำต่อท้ายเฉพาะ:. Jpg; .jpeg; .png; .gif;.webp;.svg

* เวลารีเฟรช: แนะนำให้ตั้งค่า30วันหรือแม้กระทั่ง365วัน

* ตรรกะ: บอก CDN โหนดเมื่อใดก็ตามที่ภาพเข้ามาเว้นแต่ฉัน

รีเฟรชด้วยตนเองมิฉะนั้นจะไม่ได้รับอนุญาตให้ไปที่ COS ภายในหนึ่งปีและภาพจะถูกตอกเข้ากับโหนดขอบโดยตรง

2.เปิด "กรองพารามิเตอร์แคช" (หรือที่เรียกว่าไม่สนใจพารามิเตอร์)

เมื่อผู้ใช้เข้าถึงรูปภาพบางครั้ง URL จะมีหางอยู่หลังเช่น img.yourdomain.com/a.jpg? V = 123หรือ? From = weixin

* ถ้าไม่เปิดการกรอง: CDN จะคิดว่า a.jpg? V = 123และ a.jpg? V = 456เป็นไฟล์สองไฟล์ที่แตกต่างกันโดยสิ้นเชิงซึ่งจะเรียกการดาวน์โหลดย้อนกลับไปยังแหล่งที่มาสองครั้ง

* วิธีที่ถูกต้อง: เปิด "กรองพารามิเตอร์แคช" โดยไม่คำนึงถึงพารามิเตอร์ที่อยู่เบื้องหลัง CDN จะถือว่าเป็น a.jpg และกดแคชโหนดโดยตรงและอัตราผลตอบแทนจะลดลงทันที

3.เปิด "Advanced Back Source Configuration" (Advanced Advanced)

หากคุณมีรูปภาพจำนวนมากและมีการเข้าถึงรูปภาพที่ไม่เป็นที่นิยมเป็นครั้งคราวคุณสามารถเปิด "Range Back to Source" ได้

* เมื่อผู้ใช้ขอภาพขนาดใหญ่10MB แต่ดูเพียง2MB แรกมันจะปิด

* หากไม่ได้เปิด Range โหนด CDN จะดาวน์โหลดทั้งหมด10MB จาก COS ในครั้งเดียวทำให้สิ้นเปลืองทราฟฟิก

* หลังจากเปิด Range กลับไปยังแหล่งที่มา CDN จะดึงกลับไปยังแหล่งที่มาให้มากที่สุดเท่าที่ผู้ใช้จะเห็นซึ่งจะช่วยประหยัดเงินได้อย่างแม่นยำ

5.ขั้นตอนที่สี่: การเพิ่มประสิทธิภาพประสบการณ์ขั้นสูงสุด-การลดความอ้วนขั้นสูง

หากคุณคิดว่ารูปภาพยังโหลดไม่เร็วพอแสดงว่า "ปริมาตร" ของรูปภาพใหญ่เกินไป Tencent Cloud มีเครื่องมือที่เกือบจะโกง: Data Vientiane (CI) รวมอยู่ใน COS และ CDN โดยตรงและสามารถลดขนาดรูปภาพได้มากกว่า60% โดยไม่ต้องแก้ไขโค้ดส่วนหน้าใดๆของคุณ

1.เปิดเวียงจันทน์ webp Adaptive

* จุดปวด: รูปแบบ PNG/JPG เก่าเกินไปและมีขนาดใหญ่รูปแบบ WebP มีขนาดเล็ก30%-50% แต่ไม่รองรับเบราว์เซอร์รุ่นเก่าบางรุ่น (เช่น IE เมื่อสิบกว่าปีก่อน)

* การกำหนดค่านางฟ้า: เปิด "WebP Adaptive Distribution" บนคอนโซลข้อมูลเวียงจันทน์ของ CDN หรือ COS

* เอฟเฟกต์: เมื่อเบราว์เซอร์ของผู้ใช้รองรับ WebP CDN จะแปลง a.jpg เป็นรูปแบบ WebP ในพื้นหลังโดยอัตโนมัติและส่งให้ผู้ใช้หากเป็นเบราว์เซอร์เก่าจะยังคงส่ง a.jpg เป็นแบบอัตโนมัติอย่างสมบูรณ์ไม่มีการรับรู้ส่วนหน้าและความเร็วในการโหลดจะปิดลงในแหล่งกำเนิด

2.Real-time ตัดและการบีบอัด (ด้วยการเข้าถึงพารามิเตอร์)

อย่าปล่อยให้ส่วนหน้าโหลดภาพต้นฉบับโดยตรง! หากหน้ารายการของคุณต้องการเพียงภาพขนาดย่อ200x200และคุณอัปโหลดภาพต้นฉบับ4K ผู้ใช้จะติดอยู่อย่างแน่นอน

* Tencent Cloud รองรับการเพิ่มพารามิเตอร์โดยตรงหลังลิงก์รูปภาพเพื่อให้การประมวลผลแบบคลาวด์แบบเรียลไทม์:

* ภาพต้นฉบับ: img.yourdomain.com/photo.jpg

* 200ภาพขนาดย่อกว้าง: img.yourdomain.com/photo.j

Pg? ImageMogr2 /thumbnail/200x/

* ให้ระบบคลาวด์ตัดให้คุณโทรศัพท์มือถือของผู้ใช้ต้องดาวน์โหลดรูปภาพ KB เพียงไม่กี่ภาพจะไม่เร็วได้อย่างไร?

6.รายการสรุปและตรวจสอบตนเอง

ด้วยการกำหนดค่า "การรวมนางฟ้า" ข้างต้นในที่สุดเราก็ทำชุดสถาปัตยกรรมการกระจายภาพที่มีประสิทธิภาพประหยัดเงินและปลอดภัยอย่างแน่นอน

[ผู้ใช้เบราว์เซอร์]

├────> 1.การเข้าถึงโหนด CDN (img.yourdomain.com) ───> [แคชฮิต: 0มิลลิวินาทีแฟลชโหลด]

└ ────> 2.แคชพลาด (อัตราผลตอบแทน <5%)

└ ────> [ช่องความปลอดภัยที่เข้ารหัส] ───> Tencent Cloud COS (Private Storage Barrel) ───> [Data Vientiane จะถูกโอนไปยัง WebP/Crop โดยอัตโนมัติ]

เมื่อเบราว์เซอร์ของผู้ใช้เริ่มต้นการร้องขอให้เข้าถึงโหนด CDN ก่อนหากแคชตีภาพจะกะพริบโหลดภายใน0มิลลิวินาทีหากแคชล้มเหลว (โดยปกติจะน้อยกว่า5% ในกรณีนี้) CDN จะกลับไปที่ถังเก็บข้อมูลส่วนตัวของ Tencent Cloud COS ผ่านช่องทางที่ปลอดภัยที่เข้ารหัสและโอนไปยัง WebP โดยอัตโนมัติหรือครอบตัดผ่านข้อมูลเวียงจันทน์และในที่สุดก็ส่งคืนให้กับผู้ใช้อย่างปลอดภัย

สุดท้ายให้คุณจัดเรียงรายการตรวจสอบการป้องกันการพลิกคว่ำด้วยตนเองก่อนที่จะออนไลน์:

รายการตรวจสอบ

สถานะที่ถูกต้อง

ทำไมจึงสำคัญ

สิทธิ์ถัง COS

ต้องเป็นการอ่านและเขียนส่วนตัว

ป้องกันการโจรกรรมที่เป็นอันตรายอย่างเคร่งครัดและปกป้องความปลอดภัยของทรัพย์สิน

การประเมินแหล่งที่มาของ CDN

ต้องเปิดและอนุญาต

มิฉะนั้น CDN จะไม่สามารถรับภาพจากถัง COS ส่วนตัวได้

เวลาแคชรูปภาพ

แนะนำ30วันขึ้นไป

ลดอัตราผลตอบแทนได้อย่างมากและลดอัตราการไหลของ COS

กรองแคชพารามิเตอร์

ต้องเปิด

ป้องกันไม่ให้ URL แบบสุ่มที่มีพารามิเตอร์จากการยกเลิกแคช CDN ของคุณ

ใบรับรอง HTTPS

ขอแนะนำให้กำหนดค่าและบังคับให้กระโดด

หลีกเลี่ยงเบราว์เซอร์ที่ทันสมัยหรือโปรแกรมขนาดเล็กเพื่อบล็อกภาพเนื่องจากเนื้อหาผสม

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

cloud
← 返回新闻中心