ข้ามไปที่เนื้อหาหลัก

กลไก Deterministic Transaction Replay และ Global Timestamp Order Alignment ควบคม Streaming Broker ด้วย Log-Based MySQL สำหรับระบบ Streaming

 

การจำลองกลไก Deterministic Transaction Replay และ Global Timestamp Order Alignment ที่ใช้ใน Streaming Broker ระดับสูง โดยย้ายการทำงานมาควบคุมแบบอัตโนมัติภายใน MySQL Database ผ่าน 3 ส่วนหลัก

  • การไหลของข้อมูล Data Flow
  • การแก้ปัญหาของระบบ
  • ข้อพึงระวังและการดูแลรักษา

การไหลของข้อมูล

  1. ผู้ใช้รันคำสั่ง
  2. บันทึกทุกคำสั่งลงตารางระบบ 
  3. การทำงาน 
  4. การล้างข้อมูลเก่า
  5. การจัดเรียงเวลาสากล
  6. ส่งคิวรีตามลำดับ
  7. การป้องกันข้อมูลสลับกัน

ปัญหา/การแก้ปัญหา 

  1. แก้ปัญหาความไม่แน่นอน (Deterministic Guarantee) ระบบใช้การเก็บ Log จากโครงสร้าง SQL จริง และเวลาดึงข้อมูลไป Replay
  2. ระบบหน้าต่างเวลาและการจัดแถว (Order Alignment) ตัว Event Scheduler จะคอยกวาดข้อมูลย้อนหลังทุกๆ 1 นาที ช่วยจัดแถวข้อมูลดิบที่กระจัดกระจายให้มาอยู่ในตารางที่พร้อมใช้งาน
  3. ป้องกันข้อมูลซ้ำและสูญหาย (Exactly-Once Semantics) ทำหน้าที่เหมือน "ตัวคั่นหนังสือ" เมื่อสคริปต์ภายนอกหรือ Broker ดึงข้อมูลไปแล้ว จะต้องมาบันทึกจุดล่าสุดไว้ หากระบบล่ม กลไกนี้จะส่งข้อมูลต่อจากจุดเดิมทันที ไม่ต้องเริ่มนับหนึ่งใหม่

การดูแลรักษา

  • ตรวจสอบดิสก์ (Disk Space) เป็นระยะ แม้เราจะสร้างระบบลบประวัติที่เก่ากว่า 7 วัน
  • การเปิด-ปิดระบบ หากในอนาคตต้องการหยุดระบบชั่วคราว สามารถสั่งเปิด/ปิดได้

ข้อแนะนำ

  1. ปรับปรุงระดับการล็อกเพื่อลดคอขวด (Concurrency Tuning) 
  2. การเขียนข้อมูลเข้าตลอดเวลา หากคุณใช้คำสั่งล้างข้อมูลเก่าแบบเป็นก้อนใหญ่ๆ (Bulk Delete) ทำให้ระบบช้าลง

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

อะไรคือ NPU (Neural Processing Unit) มีความสำคัญอย่างไร แนวคิดมาจากไหน

ความหมาของคำว่า NPU (Neural Processing Unit)  NPU (Neural Processing Unit) คือ หน่วยประมวลผลโครงข่ายประสาทที่สร้างมาเพื่อใช้งานด้านปัญญาประดิษฐ์ เป็นหน่วยประมวลผลพิเศษที่ออกแบบมาเพื่อใช้ในแนวคิดของการเรียนรู้ของเครื่อง (Machine Learning) ของคอมพิวเตอร์โดยเฉพาะ ทำให้การประมวลผล AI ทรงประสิทธิภาพเพิ่มขึ้นจากเดิมของ TPU GPU และ CPU เช่น การจดจำภาพ, วิเคราะห์เสียง, หรือการแปลภาษา ทำได้รวดเร็วและประหยัดพลังงานกว่า CPU/GPU ทั่วไป โดยทำงานคล้ายโครงข่ายประสาทของมนุษย์ และพบได้ทั้งในสมาร์ตโฟน, คอมพิวเตอร์ (PC), และอุปกรณ์ AI อื่นๆ ในอนาคต เพื่อเร่งความเร็วของการทำงานของ AI สามารถจัดการงานและปัญหาที่ซับซ้อนได้อย่างมีประสิทธิภาพ  ประวัติความเป็นมาของ NPU (Neural Processing Unit)  ตั้งแต่ปี 1970 เป็นต้นมาเราได้ใช้เริ่มมีการใช้หน่วยการประมวลผลแบบดั้งเดิม คือ หน่วยประมวลผลกลาง (CPU) ถือเป็น "สมอง" และเป็นกลไกการทำงานของคอมพิวเตอร์ ดังนั้นซีพียู CPU ประมวลผลงานคำนวณแบบดั้งเดิมส่วนใหญ่มีหน้าที่รับผิดชอบการทำงานของแอปพลิเคชันให้มีศักยภาพหลากหลายเพิ่มมาเรื่อย แม้ว่าจะมีหลายประเภท แต่โดยทั่...

Micro SaaS "ขนาดพอดีคำ" สร้างธุรกิจเริ่มต้นอย่างง่ายด่าย จากไอเดียสู่สร้างรายได้ โดยใช้ AI Agent ตอบสนองความต้องการซอฟต์แวร์ที่เล็ก ง่าย และทรงพลัง

ผลิตภัณฑ์ Micro SaaS กำลังได้รับความนิยมมากขึ้นกว่าที่เคย เป็นผลมาจากความต้องการซอฟต์แวร์เฉพาะทางที่เพิ่มสูงขึ้น ผู้ประกอบการกำลังสร้างเครื่องมือน้ำหนักเบาที่ตอบโจทย์ความต้องการเฉพาะด้าน ตั้งแต่เครื่องมือสร้างเนื้อหาที่ขับเคลื่อนด้วย AI และ CRM เฉพาะกลุ่ม ไปจนถึงแอปพลิเคชันการออกใบแจ้งหนี้และแพลตฟอร์มการจัดการโครงการที่ใช้งานง่าย โซลูชันที่มุ่งเน้นเฉพาะด้านเหล่านี้กำลังได้รับความนิยมในอุตสาหกรรมต่างๆ เช่น การศึกษา ฟิตเนส บริการ และการตลาด ไม่ว่าจะเป็นการช่วยให้ธุรกิจขนาดเล็กปรับปรุงกระบวนการทำงาน หรือการนำเสนอเครื่องมือที่ชาญฉลาดยิ่งขึ้นให้กับผู้สร้างสรรค์ แนวคิด SaaS ขนาดเล็กกำลังเปิดโอกาสใหม่ๆ ให้กับผลิตภัณฑ์ที่ทำกำไรได้และดูแลรักษาง่าย Micro SaaS คืออะไร? Micro SaaS (ไมโครซาส) เป็นรูปแบบซอฟต์แวร์ออนไลน์ที่ให้บริการผ่านเว็บ (Software as a Service) แต่มี ขนาดเล็ก, เน้นแก้ปัญหาเฉพาะด้าน (Niche), ทีมพัฒนาเล็กมากถึงขั้น ผู้พัฒนาคนเดียวก็ทำได้, ต้นทุนต่ำ และมักสร้างรายได้แบบ Subscription รายเดือน/รายปี วิเคราห์ตลาดของ Micro SaaS  Micro SaaS มีการเติบโตอย่างมีนัยสำคัญภายในตลาดเทคโทนโลย...

TomCat สำหรับติดตั้ง แก้ไข คอนฟิก ใช้งาน JSP

Apache Tomcat เป็น  HTTP Server ที่มีความสามารถนำภาษาจาวามาใช้งานได้  สามารถใช้เทคโนโลยีของภาษาจาวาที่เรียกว่า Java Servlet  และ Java Server Page (JSP)  Tomcat เป็นโปรแกรม Open-Source  อยู่ภายใต้การดูแลของ Apache Software Foundation  (ซึ่งเป็นผู้สร้าง Apache HTTP Server ที่เป็นที่นิยมใช้กันอย่างแพร่หลาย)  สามารถอ่านรายละเอียดของ Tomcat ได้ที่  http://tomcat.apache.org  โดยเลือกหัวข้อ “ Documentation”  และเลือก “Tomcat 7.0” ขั้นตอนการติดตั้ง Tomcat เรียงลำดับดังนี้