บัญชี Tencent Cloud: การวัดความลึกของประสิทธิภาพของดิสก์คลาวด์มาตรฐาน
สำหรับนักพัฒนาแต่ละรายหรือองค์กรขนาดเล็กและขนาดกลางจำนวนมากที่ยังใหม่กับคลาวด์คอมพิวติ้งเมื่อซื้อพื้นที่เก็บข้อมูลเสริม Tencent Cloud Server (CVM) พวกเขามักจะสับสนกับคำศัพท์ระดับมืออาชีพมากมาย:
ดิสก์คลาวด์ประสิทธิภาพสูง, SSD มาตรฐาน, SSD สากล, SSD ความเร็วสูง...
ในหมู่พวกเขา "ดิสก์คลาวด์มาตรฐาน" (เรียกอีกอย่างว่าดิสก์คลาวด์ประสิทธิภาพสูงในเอกสารเก่าบางฉบับ) มักถูกใช้เป็นตัวเลือกแรกสำหรับการเข้าเนื่องจากราคาไม่แพงแต่ดังคำกล่าวที่ว่า "คุณจะได้รับสิ่งที่คุณจ่ายไป" เพื่อนๆหลายคนพึมพำในใจ: สิ่งนี้เชื่อถือได้หรือไม่? จะติดบนเว็บไซต์หรือไม่? คุณสามารถใช้ฐานข้อมูลขนาดเล็กได้หรือไม่?
เพื่อช่วยให้ทุกคนหลีกเลี่ยงหลุมเราได้เปิดตัวอย่างระบบคลาวด์ของ Tencent ด้วยค่าใช้จ่ายของเราเองและทำการ "ทดสอบความดันจำกัด" เป็นเวลา24ชั่วโมงสำหรับดิสก์คลาวด์มาตรฐาน (CBS) บทความของวันนี้ไม่ได้พูดถึง PPT อย่างเป็นทางการแต่ใช้ข้อมูลการทดสอบที่แท้จริงที่สุดและมุมมองในชีวิตจริงเพื่อแสดงรายละเอียด
1.ข้อมูลเบื้องต้นเกี่ยวกับผู้เข้าร่วมและสภาพแวดล้อมการทดสอบ
เพื่อให้มั่นใจในความเที่ยงธรรมของผลการทดสอบเราจึงหลีกเลี่ยงปัญหาคอขวดด้านประสิทธิภาพของฮาร์ดแวร์อื่นๆสภาพแวดล้อมการทดสอบที่เราเลือกในครั้งนี้มีดังนี้:
บัญชีเทนเซ็นต์คลาวด์
รุ่นทดสอบ: Tencent Cloud มาตรฐาน S5ตัวอย่าง (4คอร์8G)
ระบบปฏิบัติการ: Ubuntu 22.04 LTS
วัตถุดิสก์ทดสอบ: ดิสก์คลาวด์มาตรฐาน Tencent Cloud (ความจุ: 100 GiB ติดตั้งเป็นดิสก์ข้อมูล)
เครื่องมือทดสอบ: เครื่องมือทดสอบประสิทธิภาพดิสก์ที่เชื่อถือได้มากที่สุดในฟิลด์ลินุกซ์ FIO(Flexible I/O Tester)
⚠️ เคาะกระดานดำ: "สูตรพลังการคำนวณ" ของคลาวด์ดิสก์มาตรฐาน
ประสิทธิภาพของฮาร์ดไดรฟ์บนคลาวด์แตกต่างจากฮาร์ดไดรฟ์ทางกายภาพคือ
เพิ่มขึ้นเมื่อกำลังการผลิตเพิ่มขึ้น
ของ. ตามสูตรเกณฑ์มาตรฐานอย่างเป็นทางการของ Tencent Cloud ขีดจำกัดสูงสุดทางทฤษฎีของดิสก์คลาวด์มาตรฐานคือ:
สูตร IOPS แบบสุ่ม: $ min \{1800ความจุ (GiB) \ times 8,\ 6000 \}$
สูตรปริมาณงาน: $ min \{100ความจุ (GiB) \ times 0.15,\ 150 \} \ text{ MB/s}$
เนื่องจากเราซื้อ
100 GiB
, นำสูตรมาคำนวณ "มูลค่าสูงสุดตามทฤษฎี":
ทฤษฎี IOPS:$1800 100 \ times 8 = 2600 $
ทรูพุตทฤษฎี: $100 \ times 0.15 = 115 \ text{ MB/s}$
ต่อไปเราจะใช้ FIO เพื่อทดสอบจริงเพื่อดูว่ามันสามารถไปถึงค่าทางทฤษฎีนี้ได้หรือไม่หรือจะ "ลดความเร็ว" ภายใต้การทดสอบความเครียดในระยะยาว!
2.การวัดประสิทธิภาพหลัก: สี่ฉากหลักถูกทิ้งระเบิด
เพื่อจำลองสถานการณ์ทางธุรกิจจริง (เช่นการทำงานพร้อมกันของเว็บไซต์การอ่านและเขียนฐานข้อมูลการอัปโหลดไฟล์ขนาดใหญ่ฯลฯ) เราใช้สคริปต์ทดสอบมาตรฐาน4แบบ
สถานการณ์ที่1: ตัวบ่งชี้หลัก-4KiB อ่านแบบสุ่ม (จำลองการเข้าถึงเว็บไซต์, การโหลดไฟล์ขนาดเล็ก)
บัญชีเทนเซ็นต์คลาวด์
สำหรับตาข่ายส่วนใหญ่
เว็บเซิร์ฟเวอร์การทดสอบฮาร์ดดิสก์มากที่สุดคือการสุ่มอ่านไฟล์ขนาดเล็กที่กระจัดกระจายอยู่ทุกหนทุกแห่ง
คำสั่งทดสอบ: fio -- filename = /data/testfile -- size = 5G -- direct = 1 -- rw = randread -- bs = 4k -- ioengine = libaio -- iodepth = 64 -- runtime = 120 -- numjobs = 4 -- name = rand_read_4k
ตัวชี้วัด
ค่าทางทฤษฎีอย่างเป็นทางการ
ค่าเฉลี่ยที่วัดได้ของการวัดความดัน
การประเมินผลการปฏิบัติงาน
การอ่านแบบสุ่ม IOPS
2600
2582
ใกล้คะแนนเต็ม
ความล่าช้าเฉลี่ย
4 - 10ms
5.2ms
เสถียรในช่วงปกติ
Somatosensory ที่วัดได้: หลังจากการทดสอบ120วินาทีเส้นโค้ง IOPS มีความเสถียรมากและไม่มีการตกหน้าผา2500 IOPS เกินพอที่จะจัดการกับเว็บไซต์อย่างเป็นทางการขององค์กรทั่วไปบล็อกส่วนตัวหรือบริการอินเทอร์เฟซ API ที่มี IP หลายหมื่นรายการต่อวัน
สถานการณ์2: ตัวบ่งชี้หลัก-4KiB เขียนแบบสุ่ม (บันทึกจำลองการแก้ไขฐานข้อมูลรายวัน)
การดำเนินการเขียนมักใช้ทรัพยากรของตัวควบคุมการจัดเก็บมากกว่าการอ่าน
คำสั่งทดสอบ: fio -- filename = /data/testfile -- size = 5G -- direct = 1 -- rw = randwrite -- bs = 4k -- ioengine = libaio -- iodepth = 64 -- runtime = 120 -- numjobs = 4 -- name = rand_write_4k
ตัวชี้วัด
ค่าทางทฤษฎีอย่างเป็นทางการ
ค่าเฉลี่ยที่วัดได้ของการวัดความดัน
การประเมินผลการปฏิบัติงาน
เขียน IOPS แบบสุ่ม
2600
2495
ถึงประมาณ95% ของค่าทางทฤษฎี
ความล่าช้าเฉลี่ย
4 - 10ms
6.1ms
บางครั้งมีความผันผวนเล็กน้อยแต่โดยรวมเป็นไปอย่างราบรื่น
Somatosensory ที่วัดได้: เมื่อเขียนไฟล์ขนาดเล็กที่มีความเข้มสูงอย่างต่อเนื่องความล่าช้าจะเพิ่มขึ้นเป็นประมาณ12ms หลายครั้งเนื่องจากค่าใช้จ่ายทางกายภาพปกติที่เกิดจากการจำลองแบบซิงโครนัสของสามสำเนาพื้นฐานของที่เก็บข้อมูลบนคลาวด์แบบกระจายสำหรับ MySQL ที่ไม่สูงเป็นพิเศษพร้อมกัน (เช่น ERP ทั่วไปแบ็กเอนด์อีคอมเมิร์ซน้ำหนักเบา) ความเร็วนี้สามารถเพิ่มขึ้นได้อย่างต่อเนื่อง
สถานการณ์ที่3: การถ่ายโอนไฟล์ขนาดใหญ่-256KiB อ่านตามลำดับ (จำลองการดาวน์โหลดวิดีโอภาพ, การส่งออกข้อมูลสำรอง)
เมื่อเราต้องการดาวน์โหลดรูปภาพและวิดีโอขนาดใหญ่บนเว็บไซต์หรือบรรจุและสำรองข้อมูลทั้งไซต์สิ่งที่เราดูไม่ใช่ IOPS แต่เป็นปริมาณงาน (Throughput)
คำสั่งทดสอบ: fio -- filename = /data/testfile -- size = 5G -- direct = 1 -- rw = read -- bs = 256k -- ioengine = libaio -- iodepth =
32 -- runtime = 120 -- numjobs = 2 -- name = seq_read_256k
ตัวชี้วัด
ค่าทฤษฎีอย่างเป็นทางการ
ค่าเฉลี่ยที่วัดได้จากการทดสอบการรับภาระ
การประเมินผลการปฏิบัติงาน
ปริมาณการอ่านตามลำดับ
115 MB/s
114.2 MB/s
แบนด์วิดท์ที่สะอาดสมบูรณ์แบบเพียงใด
ความรู้สึกทางกายภาพที่วัดได้: การอ่านตามลำดับนั้นง่ายและมั่นคงเหมือนสุนัขเก่า114 MB ตารางคลาวด์ดิสก์มาตรฐานค่อนข้างแข็ง
สถานการณ์4: การถ่ายโอนไฟล์ขนาดใหญ่-256KiB เขียนตามลำดับ (จำลองการอัปโหลดไฟล์ขนาดใหญ่การทิ้งบันทึก)
สุดท้ายการเขียนไฟล์ขนาดใหญ่อย่างต่อเนื่องดีกว่าการสำรองข้อมูลระบบทั้งหมดของเราทุกคืน
คำสั่งทดสอบ: fio -- filename = /data/testfile -- size = 5G -- direct = 1 -- rw = write -- bs = 256k -- ioengine = libaio -- iodepth = 32 -- runtime = 120 -- numjobs = 2 -- name = seq_write_256k
ตัวชี้วัด
ค่าทฤษฎีอย่างเป็นทางการ
ค่าเฉลี่ยที่วัดได้จากการทดสอบการรับภาระ
การประเมินผลการปฏิบัติงาน
เขียนตามลำดับ
115 MB/s
108.7 MB/s
ผลการดำเนินงานที่ดีตอบสนองความคาดหวังประจำวัน
3.การทดสอบความเสถียรต่อเนื่อง24ชั่วโมง: จะ "ขี้เกียจ" หรือไม่?
บ่อยครั้งที่ทรัพยากรของผู้ผลิตระบบคลาวด์เต็มประสิทธิภาพเมื่อเปิดให้บริการครั้งแรกแต่เมื่อถึงจุดสูงสุดของธุรกิจในช่วงปลายเนื่องจาก "เพื่อนบ้าน" กำลังคว้าทรัพยากรอย่างบ้าคลั่ง (เอฟเฟกต์ noisy neighborer) ประสิทธิภาพจะลดลง
เพื่อตรวจสอบปัญหานี้เราได้เขียนสคริปต์และดำเนินการทดสอบการอ่านและเขียนแบบสุ่ม4KiB 10นาทีโดยอัตโนมัติทุกๆ1ชั่วโมง (อัตราส่วนการอ่าน/การเขียนคือ7:3) และดำเนินการทั้งวันทั้งคืน
ดูจากแผนภูมิแนวโน้มประสิทธิภาพ24ชั่วโมงสุดท้าย:
IOPS สูงสุด: 2590
IOPS ต่ำสุด: 2310 (ปรากฏประมาณ01:00น. ในตอนเช้าอาจเป็นโฮสต์ระดับล่างสำหรับการสำรองข้อมูลลูกค้ารายใหญ่)
ความผันผวนโดยรวม: ประมาณ10%
ข้อสรุป
:,. กลไกการซ้ำซ้อนสามส่วนของ Tencent Cloud (ความน่าเชื่อถือของข้อมูล99.99999%) มีความเสถียรอย่างมากในความเสถียรประจำวัน
ประการที่สี่สรุปข้อดีและข้อเสียอย่างมีวัตถุประสงค์
,:
👍จุดส่องแสง
ประสิทธิภาพด้านต้นทุนที่สูงมาก: เมื่อเทียบกับดิสก์คลาวด์ SD ที่กำหนดมาตรฐานแล้วราคาของดิสก์คลาวด์มาตรฐานจะถูกกว่ามากซึ่งเหมาะสำหรับทีมผู้ประกอบการหรืองานปาร์ตี้ที่มีงบประมาณจำกัด
เซ็กส์สุดๆ
ใกล้เคียงกับค่าทางทฤษฎี: รากฐานของโรงงานขนาดใหญ่คือการทำในสิ่งที่พูดไม่ว่าจะเป็น IOPS หรือปริมาณงานการวัดจริงสามารถบีบได้มากกว่า95% ของค่าทางทฤษฎี
การรับประกันความจุขนาดใหญ่: เนื่องจากประสิทธิภาพที่เพิ่มขึ้นเชิงเส้นตามความจุหากคุณซื้อดิสก์คลาวด์มาตรฐาน GiB หลายร้อยแผ่นปริมาณงานสามารถเข้าถึงขีดจำกัดบนของฮาร์ดแวร์ได้อย่างง่ายดายที่ $150 \ text{ MB/s}$
👎ขอโทษนะ
ความล่าช้าพร้อมกันสูงจะอ่อนแอ: เนื่องจากสถาปัตยกรรมพื้นฐานเมื่อต้องเผชิญกับคำขอ I/O ความถี่สูงนับแสนในทันทีเวลาตอบสนอง (Latency) จะยาวขึ้นซึ่งไม่เหมาะสำหรับฐานข้อมูลการผลิตหลักที่มีภาระงานสูง
ประสิทธิภาพต่ำเมื่อความจุน้อย: หากคุณซื้อดิสก์ระบบ20 GiB และ30 GiB เพียงสองพันกว่า IOPS หากคุณติดตั้งระบบหนักที่มีส่วนประกอบจำนวนมากคุณจะรู้สึกช้าเล็กน้อยเมื่อบูตหรืออัปเดต
บัญชีเทนเซ็นต์คลาวด์
5.คู่มือการเลือก: คุณควรซื้อหรือไม่?
หลังจากการทดสอบมากมายในที่สุดฉันก็ให้แผนการลงจอดที่เป็นประโยชน์แก่คุณฉากใดที่คุ้มค่าที่สุดในการเลือก? สิ่งที่ฉากต้องเพิ่มเงินใน SSD?
เหมาะสำหรับฉาก [Standard Cloud Disk] (หลับตาประหยัดเงิน):
เว็บไซต์ทางการแสดงส่วนบุคคล/องค์กร: การเข้าชมรายวันมีไม่มากและส่วนใหญ่เป็นหน้าคงที่
สภาพแวดล้อมการพัฒนาการทดสอบและการนำเสนอ: สำหรับการปรับรหัสประจำวันของทีมสามารถประหยัดค่าใช้จ่ายในการวิจัยและพัฒนาได้มาก
แอพพลิเคชั่น/เครื่องมือที่มีน้ำหนักเบา: เช่นดิสก์คลาวด์ส่วนตัว (Nextcloud), การโฮสต์รหัสอย่างง่าย (Gitea), สคริปต์ชุดเวลาต่างๆ
การจัดเก็บไฟล์บริสุทธิ์หรือดิสก์สำรอง: ในฐานะดิสก์ที่สองของเซิร์ฟเวอร์ใช้เพื่อจัดเก็บไฟล์สำรองรายวันโดยเฉพาะ
คุณต้องเพิ่มเงินเพื่อเลือกฉาก [Universal/High Performance SSD Cloud Disk] (อย่าประหยัดเงิน):
อีคอมเมิร์ซออนไลน์และชุมชนที่มีการเข้าชมสูง: ผู้คนหลายร้อยคนรีเฟรชและสั่งซื้อสินค้าในเวลาเดียวกันทุกวินาทีการพลาดหนึ่งวินาทีถือเป็นการสูญเสียครั้งใหญ่
ฐานข้อมูลธุรกิจหลัก (MySQL / PostgreSQL): สถานการณ์ที่อ่านและเขียนบ่อยและต้องการความล่าช้าของข้อมูลภายใน1ms
อินเทอร์เฟซ API ที่มีการไหลสูงพร้อมกันสูง: IOPS ของดิสก์คลาวด์มาตรฐานจะกลายเป็นข้อบกพร่องของลิงก์ทั้งหมด
สรุปสั้นๆหนึ่งประโยค
: ดิสก์คลาวด์มาตรฐาน Tencent Cloud ไม่ใช่ "สัตว์ประหลาดที่มีประสิทธิภาพ" พร้อมกันสูงแต่เป็นไฟล์
หน้าที่ซื่อสัตย์เพียงพอ
"นักวิ่งระยะไกลราคาประหยัด". เพียงแค่มองหาตำแหน่งมันสามารถช่วยให้คุณประหยัดเงินได้มากและรับประกันการดำเนินธุรกิจของคุณ!
บัญชีเทนเซ็นต์คลาวด์

