มาทำ LoadTesting ด้วย locust.io

การทำ Load Testing ด้วย locust.io เป็นกระบวนการที่ช่วยในการทดสอบประสิทธิภาพและความทนทานของระบบโดยการสร้างการตั้งค่าและจำลองผู้ใช้แบบพร้อมกันหลายคน

เริ่มต้นด้วยการติดตั้ง locust.io โดยใช้คำสั่งต่อไปนี้ในเทอร์มินัล:

pip install locust

เมื่อติดตั้งเสร็จสมบูรณ์ คุณสามารถสร้างไฟล์สคริปต์ของการทดสอบด้วย locust.io ได้โดยใช้ภาษา Python

ตัวอย่างการสร้างไฟล์สคริปต์ Load Testing ด้วย locust.io:

from locust import HttpUser, task, between

data = {
    "username": "username",
    "password": "password"
}


class WebsiteTestUser(HttpUser):
    wait_time = between(0.5, 3.0)

    def on_start(self):
        response = self.client.post(
            "/v1/signin", json=data).json()
        self.header = {"authorization": response["access_token"]}

    @task(1)
    def testapi01(self):
        self.client.get(
            "/v1/dashboard", headers=self.header)

    @task(2)
    def testapi02(self):
        self.client.get(
            "/v1/event", headers=self.header)

    @task(3)
    def testapi03(self):
        self.client.get(
            "/v1/test?search=&page=1&pageSize=100", headers=self.header)

ในตัวอย่างนี้ เราสร้าง Class ชื่อ MyUser ที่สืบทอดจาก HttpUser ซึ่งเป็น Base class ของ locust.io และกำหนดเวลาหน่วงระหว่างการส่งคำขอระหว่าง 1-2 วินาที ในเมท็อด เรียกใช้ endpoint ที่ต้องการทดสอบผ่าน self.client.get()

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

คุณสามารถเริ่มต้นการทดสอบด้วย locust.io ได้โดยใช้คำสั่งต่อไปนี้ในเทอร์มินัล:

locust -f mylocustfile.py

โดยในตัวอย่างเราใช้ชื่อไฟล์ mylocustfile.py สามารถตั้งชื่อไฟล์ตามที่คุณต้องการได้

หลังจากนั้น ให้เปิดเบราว์เซอร์และไปที่ http://localhost:8089 เพื่อเข้าสู่หน้าตรวจสอบผลลัพธ์และสถิติการทดสอบของ locust.io

การทำ Load Testing ด้วย locust.io เป็นเครื่องมือที่มีประสิทธิภาพและความยืดหยุ่นในการทดสอบและปรับปรุงระบบของคุณ แต่ควรระวังในการใช้งานร่วมกับระบบที่มีความสำคัญและต้องการการทดสอบอย่างรอบคอบ ควรใช้ locust.io ในการทดสอบบนระบบเฉพาะเพื่อป้องกันความเสียหายที่อาจเกิดขึ้น

Read more

ไอลีน กู: ตำนานนักสกีฟรีสไตล์ผู้พลิกโฉมวงการและความหมายของชัยชนะ

ไอลีน กู: ตำนานนักสกีฟรีสไตล์ผู้พลิกโฉมวงการและความหมายของชัยชนะ

เจาะลึกเรื่องราวของ Eileen Gu นักสกีฟรีสไตล์ผู้สร้างประวัติศาสตร์ในโอลิมปิก 2026 สถิติที่ไม่เคยมีมาก่อน ประเด็นถกเถียง และความแข็งแกร่งส่วนตัวที่ทำให้เธอก้าวสู่ระดับโลก

By ทีมงาน devdog
วันพระ: คู่มือฉบับสมบูรณ์สำหรับพุทธศาสนิกชนและผู้สนใจยุคใหม่

วันพระ: คู่มือฉบับสมบูรณ์สำหรับพุทธศาสนิกชนและผู้สนใจยุคใหม่

เจาะลึกวันพระและความสำคัญของวันมาฆบูชา 2569 ทั้งวันหยุดราชการ ธนาคาร กิจกรรมเวียนเทียนต้นไม้ และผลกระทบต่อบริการขนส่ง เตรียมตัววางแผนทำบุญและพักผ่อน

By ทีมงาน devdog
ถอดรหัสรักแท้: "บังมัดคลองตันต้นข้าว" เรื่องราวที่สะท้อนการให้อภัยและการเริ่มต้นใหม่

ถอดรหัสรักแท้: "บังมัดคลองตันต้นข้าว" เรื่องราวที่สะท้อนการให้อภัยและการเริ่มต้นใหม่

เจาะลึกงานวิวาห์ "บังมัดคลองตัน" กับ "ต้นข้าว มิสแกรนด์" พร้อมเหตุผลจากใจเจ้าสาวที่เลือกความรักเหนือกาลเวลาและคำวิจารณ์ สู่การเริ่มต้นชีวิตคู่ที่สะท้อนการให้อภัย

By ทีมงาน devdog
ไฮไลท์บอลไทยลีก 2: มหาสารคาม เอสบีที เอฟซี กับฟอร์มร้อนแรงสู่เส้นทางเพลย์ออฟ

ไฮไลท์บอลไทยลีก 2: มหาสารคาม เอสบีที เอฟซี กับฟอร์มร้อนแรงสู่เส้นทางเพลย์ออฟ

เจาะลึกไฮไลท์บอลไทยลีก 2 ของมหาสารคาม เอสบีที เอฟซี กับฟอร์มร้อนแรง ชัยชนะสำคัญจาก ชิตชนก และบทบาทโค้ชดุสิต สู่เส้นทางเพลย์ออฟที่น่าจับตา!

By ทีมงาน devdog