Automatically translated.View original post

How to write Python so that the boss doesn't complain slowly? 🤫

1/8 Edited to

... Read moreสำหรับใครที่เคยเขียน Python แบบซิงโครนัส หรือเรียก API ทีละตัว อาจจะเคยเจอปัญหาโค้ดทำงานช้า หรือโดนหัวหน้าบ่นเรื่องประสิทธิภาพไม่ดี ผมขอแชร์วิธีที่ช่วยแก้ไขปัญหานี้อย่างได้ผลจริงๆ คือการใช้ asyncio ซึ่งเป็นไลบรารีสำหรับเขียนโค้ดแบบอะซิงโครนัสใน Python โดยหลักการคือ เราจะสร้างฟังก์ชันที่รองรับการรอคอยงาน (async def) แล้วใช้ await เพื่อรอผลลัพธ์โดยไม่บล็อกงานอื่น และใช้ asyncio.gather() เพื่อสั่งงานหลายอย่างพร้อมกันแบบขนาน ทำให้เวลารอการตอบกลับ API ลดลงมาก จากเดิมที่ต้องรอทีละตัวเป็นนาที มาเหลือเพียงไม่กี่วินาที ผมลองเปรียบเทียบภาพยนตร์การเรียก API แบบเดิมที่ใช้เวลารวมกัน 3 นาที กับแบบใหม่ที่ใช้ asyncio พบว่าระบบทำงานเร็วขึ้นถึง 3 เท่า และทำให้โปรเจกต์เสร็จไวขึ้นมาก ไม่ต้องมาคอยทนรออีกต่อไป ลองนำไปประยุกต์ใช้ดูนะครับ จะช่วยให้คนที่ทำงานเกี่ยวกับ Python มีความคล่องตัวและประสิทธิภาพดีขึ้นอย่างเห็นได้ชัด นอกจากนี้ เทคนิคนี้ยังช่วยลดภาระของเครื่องเซิร์ฟเวอร์ในขณะที่รอการตอบสนองจาก API อีกด้วย ใครที่อยากก้าวสู่การเขียนโค้ด Python ระดับมือโปร ขอแนะนำให้เริ่มฝึกใช้ asyncio ตั้งแต่วันนี้ครับ!