Feature Flags vs Canary Release

เป็นเทคนิคที่ช่วยในการเปิดหรือปิดฟังก์ชันบางอย่างในซอฟต์แวร์

 Feature FlagsCanary Release
DefinitionFeature Flags หรือที่เรียกว่า Feature Toggles คือเทคนิคที่ช่วยให้ผู้พัฒนาสามารถเปิดหรือปิดฟังก์ชันบางอย่างในแอปพลิเคชันได้โดยไม่ต้องเปลี่ยนแปลงโค้ดCanary Release เป็นกลยุทธ์การเผยแพร่ที่ใช้ในการพัฒนาซอฟต์แวร์เพื่อลดความเสี่ยงจากการเผยแพร่เวอร์ชันใหม่ โดยจะปล่อยให้ผู้ใช้กลุ่มเล็กๆ ได้ทดสอบก่อน
CategoriesA/B Testing, CD, CI, การพัฒนาDevOps, การเผยแพร่, การเผยแพร่, ความเสี่ยง

Feature Flags คืออะไร?

เป็นเทคนิคที่ช่วยในการเปิดหรือปิดฟังก์ชันบางอย่างในซอฟต์แวร์

🚩

คำจำกัดความ

Feature Flags หรือที่เรียกว่า Feature Toggles คือเทคนิคที่ช่วยให้ผู้พัฒนาสามารถเปิดหรือปิดฟังก์ชันบางอย่างในแอปพลิเคชันได้โดยไม่ต้องเปลี่ยนแปลงโค้ด

🔧

การนำไปใช้

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

🎯

กรณีการใช้งาน

ใช้ในกระบวนการ Continuous Deployment (CD), Canary Releases, A/B Testing และเพื่อจัดการการแสดงผลของฟังก์ชันสำหรับกลุ่มผู้ใช้ต่างๆ

💡

ประโยชน์

Feature Flags ช่วยให้การพัฒนาและทดสอบฟีเจอร์ใหม่ๆ ทำได้อย่างปลอดภัยและมีประสิทธิภาพ โดยไม่กระทบต่อผู้ใช้ทั้งหมด

📈

การเติบโต

การใช้ Feature Flags ได้รับความนิยมเพิ่มขึ้นในยุคของ Agile, DevOps และการส่งมอบอย่างต่อเนื่องในวงการพัฒนาซอฟต์แวร์

📝

การกำหนดค่า

สามารถกำหนดค่า Feature Flags โดยใช้บริการเช่น Bullet Train หรือ Launch Darkly, การสร้างบริการแบ็กเอนด์แบบกำหนดเอง หรือใช้ไฟล์ในแอปพลิเคชัน

Feature Flags คืออะไร? →

Canary Release คืออะไร?

เป็นกลยุทธ์การเผยแพร่ที่ใช้เพื่อลดความเสี่ยง

🐤

คำจำกัดความ

Canary Release เป็นกลยุทธ์การเผยแพร่ที่ใช้ในการพัฒนาซอฟต์แวร์เพื่อลดความเสี่ยงจากการเผยแพร่เวอร์ชันใหม่ โดยจะปล่อยให้ผู้ใช้กลุ่มเล็กๆ ได้ทดสอบก่อน

📅

ต้นกำเนิด

ชื่อ Canary มาจากการใช้นกคานารีในเหมืองถ่านหิน หากมีแก๊สพิษรั่วไหลเข้าสู่เหมือง นกคานารีจะตายก่อนที่คนงานจะได้รับผลกระทบ

🔍

การติดตาม

ระบบจะถูกติดตามอย่างใกล้ชิด หากเวอร์ชันใหม่ทำงานได้ดี จะปล่อยให้ผู้ใช้มากขึ้น

🔄

การย้อนกลับ

หากพบปัญหากับเวอร์ชันใหม่ การเผยแพร่สามารถย้อนกลับและใช้เวอร์ชันเก่าทั้งหมดได้

👥

การเลือกผู้ใช้

มีการใช้กลยุทธ์ที่แตกต่างกันในการเลือกผู้ใช้ที่จะได้รับการเปิดเผยเวอร์ชันใหม่ เช่น การสุ่มหรือการเลือกตามข้อมูลประชากร

Canary Release คืออะไร? →