Skip to main content

15 posts tagged with "best practices"

View All Tags

ทดสอบความตึงเครียด (stress) ใน Docker container กับ Swap Memory เพื่อหาค่าที่เหมาะสม

· 7 min read

Intro

สวัสดีครับ บทความนี้เป็นการทดสอบความตึงเครียด (stress) กับ Memory swap เป็นการทำ PoC เพื่อทดสอบสมมุติฐานว่า "ถ้าสมมุติ Swap Memory ไม่เพียงพอจะเกิดอะไรขึ้น" เป็นบทความเสริมจาก "วิธีการจัดการ Resouces limits ของ CPU (cores) และ Memory ใน Docker containers"

เพื่อเสริมเพิ่มความเข้าใจเกี่ยวกับการใช้งาน Memory swap ใน Docker container ช่วยเพิ่มเข้าใจและการปรับค่าที่เหมาะสม

ทำความเข้าใจเกี่ยวกับ Shared memory size (--shm-size) และผองเพื่อนใน Docker

· 2 min read

Intro

สวัสดีครับ บทความนี้จะพูดถึง shm (shared memory) ใน Docker ซึ่งเป็นการจัดการ Memory แบบหนึ่งใน Container เป็นบทความเสริมจาก "วิธีการจัดการ Resouces limits ของ CPU (cores) และ Memory ใน Docker containers"

โดยตามปกติค่าของ shm ของ Docker ได้กำหนด Default ไว้ที่ 64MB และเพิ่มได้ด้วย Option --shm-size หรือ shm_size สำหรับ Docker compose

วิธีการจัดการ Resources limits ของ CPU (cores) และ Memory ใน Docker containers

· 5 min read

Intro

สวัสดีครับ บทความนี้มีเนื้อหาเกี่ยวกับ Docker คือวิธีจำกัดการใช้งาน CPU (cores) และ RAM ใน Docker containers โดยปกติ Docker containers จะมีการใช้ Resources ร่วมกัน (sharing) โดยที่บางครั้งอาจจะมี Container บางตัวใช้ CPU, RAM เกินไป

ผลจากการใช้ CPU, RAM เกินไปก็จะส่งผลทำให้ Resources และประสิทธิภาพของ Host ลดลง ดังนั้นบทความนี้จะอธิบายวิธีการจำกัด Resources เหล่านั้นเพื่อให้ส่งผลต่อประสิทธิภาพโดยรวมดีที่สุด

Docker Resouces limits

ลดขนาด Image size ของ Docker ด้วย Build stages

· 7 min read

Intro

สวัสดีครับ บทความนี้เขียนเกี่ยวกับ Docker โดยจะเป็นเทคนิคการลดขนาด Image size หลังจากที่ Build Dockerfile เพื่อสร้าง Docker images ไว้สำหรับใช้รัน Containers

ดังนั้นการ Optimizing เพื่อทำให้ Docker image เบา (slim) ที่จะช่วยเพิ่มความเร็วและลดขนาดบนดิสสำหรับ Build และ Deploy Containers ที่ควรเข้าใจและฝึกฝนการปรับแต่ง Docker image ให้เหมาะสม

docker multiple stages

Tailwind CSS เทคนิคและแนวปฏิบัติแบบ Best Practices

· 5 min read

Intro

สวัสดีครับ บทความนี้จะพูดถึง Tailwind CSS สำหรับคนที่เคยใช้งานมาแล้ว เนื่องจากเทคโนโลยีที่ได้ใช้งานบ่อยใช้เยอะช่วงนี้ พอใช้เรียนรู้และใช้งานแบบ Basic มาได้สักพัก ก็ไปค้นหาข้อมูลที่คนอื่น ๆ เขาเขียนและนำนำไว้เพื่อดูเทคนิค (Tips) และแนวปฏิบัติที่ดีที่สุด (Best Practices) ทำให้เจอข้อมูลที่น่าสนใจหลายอย่าง

บทความนี้จึงเป็นการรวบรวมและประเด็นที่น่าสนใจที่ค้นพบ และโน้ต ๆ ไว้อ่าน 🚀

เพิ่มประสิทธิภาพลดขนาด App bundle size ด้วย Dynamically Importing กับ React.lazy

· 5 min read

Intro

สวัสดีครับ บทความนี้จะแชร์เทคนิคเพิ่มประสิทธิภาพในการโหลดหน้าเว็บ Apps และขนาดของ Bundle size ด้วย Dynamically Importing Components ของ React.lazy

ใน JavaScript frameworks เช่น React โดยปกติจะใช้ Statically import สำหรับการเรียก Components ซึ่งเมื่อเปิด Apps ก็จะเป็นการเรียกใช้ทันที แต่บางทีก็ไม่ได้มีความจำเป็นที่จะต้องการทันทีขนาดนั้น

Dynamically Importing จึงเป็นเทคนิคที่เข้ามาช่วยแก้ปัญหานี้เพื่อใช้ Import Components เมื่อจำเป็นต้องเรียกใช้เท่านั้น

ปัญหาของ Statically import คือการเรียกใช้ Components ทันทีโดยไม่ได้คำนึงว่าจะใช้งานหรือไม่ แต่ลองคิดดูว่า บาง Component จะ Render หลังจาก User interacts เท่านั้น หรือก็จากเงื่อนไขบางอย่าง ตัวอย่างดังนี้

Throttling คืออะไร แตกต่างกับ Debouncing อย่างไร (ตอนจบ)

· 3 min read

Intro

สวัสดีครับ จากบทความครั้งก่อนได้พูดถึง เทคนิค Debouncing โดยบทความนี้จะพูดถึงเทคนิค Throttling ที่มีความคล้ายคลึงกัน ซึ่งเป็นเทคนิคที่มีประโยชน์ช่วยเพิ่มประสิทธิภาพ Performance ได้ทั้ง Frontend App และ Backend App ที่ช่วยแก้ปัญหาการเกิด callback จำนวนมากจาก Event listeners มีรายละเอียดดังนี้

Debouncing คืออะไร ?

· 4 min read

Intro

สวัสดีครับ บทความนี้จะพามารู้จักกับ Debouncing โดย Debouncing เป็นเทคนิคที่มีประโยชน์ในการเพิ่มประสิทธิภาพ Performance ของ Client-side applications โดยเป็นหนึ่งเทคนิคในหลายสิ่งที่สำคัญในการพัฒนา Web App และ Software ซึ่งตามปกติโปรแกรมเมอร์จำเป็นต้องเขียนโค้ดโปรแกรมโดยคำนึง Performance เพื่อที่จะเพิ่มประสบการณ์ผู้ใช้งานที่ดี (UX) กับ Software

เขียน Git commits อย่างไรไม่ให้มั่ว... มาดูวิธีที่ถูกต้อง (Best Practices)

· 5 min read

Intro

สวัสดีครับ บทความนี้จะเขียนอธิบายแนวทางปฏิบัติที่ดีที่สุดสำหรับการเขียน Git commits โดยจะอ้างอิงกับ https://www.conventionalcommits.org/en/v1.0.0/ เป็นหลัก

เคยไหมพบปัญหาสมาชิกในทีมพัฒนาเขียน Git commits มั่ว 😄 ไม่ว่าจะเป็นรูปแบบโครงสร้างไม่ดี หรือใส่รายละเอียดไม่ดี ทำให้การเรียกดูประวัติย้อนหลังเข้าใจยาก ลองมาดูตาม Convention นี้ซึ่งมีรายละเอียดที่เข้าใจง่ายที่ช่วยให้การสื่อสารกับทีมมีความเข้าใจง่ายขึ้นได้