Architecture Archive

PostgreSQL :: เรื่องของ partitioning table

จาก blog เรื่อง PostgreSQL 19 beta ทำการปรับปรุงความสามารถของ partitioning tableคือการเพิ่มการ merge และ split partition เข้ามา (maintenance partition)เพื่อช่วยแยกหรือรวมข้อมูลหลังจากที่ข้อมูลเกิดขึ้นมาซึ่งอาจจะไม่ตรงตามที่คิดหรือคาดหวังไว้ โดยมีคำถามเกี่ยวกับ partition table มันเป็นอย่างไร ?จึงทำการอธิบายให้นิดหน่อยดังนี้

Read More…

ทำความรู้จักกับ HTTP QUERY กันหน่อย

จาก RFC 10008: The HTTP QUERY Method นั้นได้เพิ่ม QUERY method ใน HTTP เข้ามาเป็นสิ่งที่เพิ่มเข้ามาเพื่อแก้ไขปัญหาระหว่างการใช้งาน GET และ POST นั่นเองเพื่อให้เข้าใจ มาดูตัวอย่างของการใช้งาน QUERY method

Read More…

PostgreSQL :: มีกี่ table ใน database ?

คำถามที่น่าสนใจเกี่ยวกับ database คือในแต่ละ database ของระบบงานเรานั้นมีจำนวน table เท่าไร ?ในแต่ละ table มีกี่ column​ ?ในแต่ละ table มี PK, FK และ index กี่ตัว ?ในแต่ละ table มีข้อมูลกี่ row และจะโตขึ้นอีกด้วยอัตราความเร็วเท่าไร

Read More…

เมื่อเจอปัญหา ACCEPT ERROR: :system_limit ใน ระบบที่พัฒนาด้วย Elixir

เนื่องจากไปทำการ review ปัญหาของระบบที่พัฒนาด้วย Elixirพบว่าเจอปัญหา ACCEPT ERROR: :system_limit เมื่อมีผู้ใช้งานมากยิ่งขึ้นโดยเมื่อสอบถามการแก้ไขแล้วคือ การเพิ่ม ulimit ของ Kernel OS ไปแล้วแต่ปัญหายังเกิดขึ้นเหมือนเดิม จะต้องทำอย่างไรดี

Read More…

บันทึกการแบ่งปันเรื่อง Idempotency

จากการแบ่งปันความรู้และประสบการณ์เรื่องของ Idempotencyโดยเกิดจากปัญหาการทำซ้ำของระบบทั้งจากผู้ใช้งาน หรือ process/workflow การทำงานของระบบก็ตาม เช่น ซึ่งปัญหาเหล่านี้เราควรวางแผน ออกแบบระบบการทำงานเพื่อป้องกันไม่ให้ปัญหานี้เกิดขึ้น

Read More…

มาลอง Visualize code ของระบบงานด้วย codebase-memory-mcp

จากคำถามว่าใช้อะไรในการ visualize code ออกมาดังรูปโดยสิ่งที่ใช้งานคือ codebase-memory-mcpจะทำการวิเคราะห์ code ผ่าน tree-sitter AST analysisซึ่งสนับสนุน programming language มากกว่า 100 ภาษาและนำ LSP (Language Server Protocol)มาช่วยในการวิเคราะห์ และสร้าง knowledge graph ของ code ออกมา

Read More…

บันทึกการอ่านบทความเรื่องการ scale database จาก Scaling Rails at Aura Frames

จากบทความเรื่อง Scaling Rails at Aura Frames: Splitting to 8 Primary DBsมีความน่าสนใจสำหรับการปรับปรุงระบบให้รองรับการใช้งานที่สูงขึ้นทั้งอัตราการ write และ read ข้อมูลโดย technology ที่ใช้ในการพัฒนาระบบคือ Ruby on Rails และ PostgreSQL ใน AWS RDSมาดูกันว่า ก่อนและหลังการปรับปรุงจากปัญหาที่เจอมีอะไรที่น่าสนใจบ้าง

Read More…

PostgreSQL :: ลองไปดูการใช้งาน index กันหน่อย

ปัญหาที่พบเจอจากการ review การใช้งาน PostgreSQL ของระบบงานหนึ่งคือการใช้ disk ที่สูงมาก ๆ CPU สูง แถวขึ้น ๆ ลง ๆทั้ง ๆ ที่จำนวนคนใช้งานไม่เยอะ !!ดังนั้นจึงเข้าไปดูหน่อยว่า มีการใช้งาน database เป็นอย่างไรบ้าง ?เพื่อจะได้แก้ไขปัญหา หรือ ลดปัญหาลงไปได้บ้าง

Read More…

ว่าด้วยเรื่องของการ Retry

แนวทางในการออกแบบระบบงานแบบ distributed นั้นเรื่องของ Resilience pattern เป็นความรู้พื้นฐานที่สำคัญมาก ๆเพื่อให้ระบบมีความเสถียรและคงทนต่อความผิดพลาดมากยิ่งขึ้นทั้ง backoff, timeout, retry, idempotency และ circuit breaker แต่ถ้าจัดการไม่ดี ก็อาจจะทำให้เกิดปัญหาตามมาได้ยกตัวอย่างเช่น การ Retry หรือ ทำซ้ำ

Read More…

สิ่งที่น่าสนใจจากบทความเรื่อง The State of Java on Kubernetes 2026

จากบทความเรื่อง The State of Java on Kubernetes 2026บอกว่าการใช้งาน Java บน Kubernetes นั้นส่วนใหญ่ใช้งานไม่ถูกต้องหรือใช้งานด้วยค่า default จึงส่งผลต่อ performance และ ค่าใช้จ่ายสูงเกินความจำเป็นจากการสำรวจพบว่า บริษัทขนาดใหญ่ใช้ Java มากกว่า 68% โดยส่วนใหญ่จะใช้งาน Java 17 และ 21 เป็นหลัก

Read More…