ทดสอบระบบภายใต้ความกดดันด้วย JMeter และ k6
Performance testing คือสิ่งที่แยกแยะแอปพลิเคชันที่สามารถทำงานได้ดีภายใต้การรับส่งข้อมูลจริงจากแอปพลิเคชันที่ล้มเหลวเมื่อสำคัญ ทางนี้ครอบคลุมการทดสอบโหลดและเบนช์มาร์กประสิทธิภาพโดยใช้เครื่องมือสองอันดับแรกที่ใช้กันอย่างแพร่หลายในสาขา: Apache JMeter ซึ่งเป็นเครื่องสร้างโหลดที่ใช้ Java มาช้านานและ k6 ซึ่งเป็นเครื่องยนต์สคริปต์ JavaScript ที่ใช้งานง่ายสำหรับไปป์ไลน์สมัยใหม่ คุณจะเรียนรู้วิธีวัดปริมาณการไหลผ่าน latency และอัตราข้อผิดพลาดภายใต้เงื่อนไขควบคุมและความเครียด จากนั้นใช้ข้อมูลนั้นเพื่อตัดสินใจอย่างสำหรับเกี่ยวกับความจุและโค้ด
สิ่งที่คุณจะเรียนรู้
สร้างแผน JMeter test จากศูนย์ จากนั้นขยายด้วย controllers ขั้นสูง assertions การจัดการข้อมูลแบบไดนามิก และ correlation สำหรับโปรแกรมการไหลของเซสชันที่สมจริง เขียนสคริปต์ k6 tests ใน JavaScript และส่งไปยังการดำเนินการในคลาวด์ด้วย scenarios และโปรไฟล์โหลดที่กำหนดขั้นตอน รวมผลการทดสอบประสิทธิภาพโดยตรงเข้าไปใน CI/CD pipelines เพื่อให้ regressions ถูกจับได้ก่อนการปรับใช้ Profile ผลลัพธ์โดยใช้เครื่องมือการตรวจสอบและวิเคราะห์เพื่อระบุจุดคอขวดในฐานข้อมูล APIs และโครงสร้างพื้นฐาน นำทักษะเหล่านี้ไปใช้กับ microservices โหลดงานที่บรรจุในคอนเทนเนอร์ และสถาปัตยกรรมสมัยใหม่อื่นๆ โดยใช้รูปแบบสถานการณ์จริง
เส้นทางการเรียนรู้
สิบสองหลักสูตรก้าวหน้าจาก A2 ถึง C1 ทางนี้เปิดด้วย JMeter Basics: Building Your First Test Plan และ Fundamentals of Performance Testing เพื่อสร้างพื้นฐานที่มั่นคง หลักสูตรระยะกลางครอบคลุม JMeter Advanced: Controllers and Assertions, Performance Monitoring and Analysis, JMeter Dynamic Data and Correlation และ k6 Fundamentals: Scripting with JavaScript หลักสูตรที่สำหรับไปใน Performance Testing in CI/CD Pipelines และ Testing Modern Architectures ทางนี้ปิดด้วยหลักสูตรระดับ C1 k6 Advanced: Scenarios and Cloud Execution, Distributed Load Testing & Cloud Deployment และ Performance Engineering and Optimization
วิธีการทำงาน
แต่ละหลักสูตรแบ่งออกเป็นบทเรียนสั้นๆ ที่มุ่งเน้นซึ่งคุณจะดำเนินการในตัวแก้ไขโค้ดในตัวพร้อมข้อเสนอแนะแบบเรียลไทม์ AI tutor มีให้ใช้งานเมื่อใดก็ตามที่คุณติดขัด เพื่อให้คุณสามารถทำงานผ่าน JMeter XML configuration หรือสคริปต์ k6 JavaScript ได้ด้วยความเร็วของคุณเองโดยไม่สูญเสียการเคลื่อนที่