เห็นใน feed มีการ share บทความเรื่อง How Quora scaled MySQL to 100k+ Queries Per Secondเป็นการ scale MySQL database ของระบบ Quoraซึ่งเป็นระบบถามตอบปัญหาต่าง ๆ นั่นเองโดยมีการใช้งานคร่าว ๆ คือ ข้อมูลต่าง ๆ จะเก็บไว้ใน MySQL นั่นเองดังนั้นมาดูกันว่าทางระบบทำการ scale กันอย่างไร
Read More…
เช้านี้เจอปัญหาจากระบบหนึ่งที่พัฒนาด้วยภาษา Goซึ่งพบเจอ error ว่า “Error 1040: Too many connections”ตั้งแต่เปิดระบบให้บริการมา ยังไม่เคยเจอ error นี้เลยแต่เมื่อไปดูเรื่องของ traffic การใช้งาน พบว่าใช้งานสูงขึ้นอย่างมากซึ่งคิด ๆ ดูแล้ว ก็เป็นเรื่องที่ดีเลย ที่เจอ error นี้ดังนั้นไปดูปัญหา และ re-produce ปัญหากันหน่อยเพื่อจะได้แก้ไขปัญหาได้ง่าย และ ถูกต้องมากขึ้น
Read More…
จากบทความเรื่อง Using ClickHouse as an Analytic Extension for MySQLซึ่งเขียนโดย Percona นั้น ทำการอธิบายการนำข้อมูลจาก MySQL ไปวิเคราะห์ผ่าน ClickHouseโดยใช้งาน extension สำหรับ MySQL นั่นเองที่สำคัญไม่ใช่เอามาแทนที่ แต่เอามาทำงานตาม use case ที่เหมาะสม
Read More…
คำถามที่น่าสนใจเกี่ยวกับ MySQL database คือทำไม memory ถึงใช้เยอะขึ้นเรื่อย ๆ กันบ่อยครั้งกินไปเรื่อย ๆ จนเกือบไม่เหลือแต่ระบบก็ยังทำงานได้ปกตินะ
Read More…
ปัญหาที่พบเจอวันนี้มานั่ง review code และ metric การใช้งานของระบบ API ที่เชื่อมต่อกับ MySQL databaseพบว่ามี API ตัวหนึ่งมี response time ที่สูงขึ้นมากจะเจอมากขึ้นเมื่อมีผู้ใช้งานมากขึ้นซึ่งเป็นปัญหาที่พบเจอได้บ่อยมาก ๆก็เลยไป review code และดู SQL query กันหน่อย
Read More…
คำถามถ้าต้องเก็บข้อมูลสำหรับการค้นหาและวิเคราะห์ไว้ใน Elasticsearch โดยข้อมูลต้นทางจะถูกเก็บไว้ใน RDBMS เช่น MySQL และ PostgreSQL เป็นต้น ถ้ามีการแก้ไขข้อมูลที่ RDBMS แล้ว จะทำการ sync หรือ update ข้อมูลใน Elasticsearch อย่างไรได้บ้าง
Read More…
หลังจากที่ทดลองเขียน Go มาบ้างเล็กน้อย ได้โจทย์มาเล็กๆ ว่า เราจะติดต่อฐานข้อมูลได้อย่างไร เนื่องจากโลกการพัฒนา software หนีไม่พ้นมันอย่างแน่นอน ดังนั้นจึงไปดูว่า Go มีอะไรให้ใช้บ้าง และใช้งานมันอย่างไร
Read More…