microservice Archive

รูปแบบของการออกแบบ Service ที่แปลก ๆ

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

Read More…

ทำความรู้จักกับ Backstage สำหรับทำ software catalog

จากการแบ่งปันเรื่อง Microservices design ที่ Skooldio มาบ้างคำถามที่น่าสนใจคือ ในทีม หรือ บริษัทนั้น มี software อะไรบ้างหรือถามลงไปในรายละเอียดเช่น ส่วนอื่น ๆ ก็เช่นกันทั้งระบบงานต่าง ๆ library ที่มี และ data pipeline ต่างๆ มีรวมไว้ตรงกลาง เพื่อให้เข้าถึง หรือ ใช้งานง่าย ๆไม่ต้องไปถามคนโน้นที คนนั้นที !!อยากให้เป็น centralize system ได้ไหมหนึ่งในเครื่องมือที่ใช้ในการจัดการสิ่งเหล่านี้ก็คือ Backstage นั่นเอง

Read More…

ว่าด้วยเรื่องของ Cell-Based Architecture มันเป็นอย่างไร ?

อ่านบทความเรื่องของ Slack’s Migration to a Cellular Architecture ซึ่งทางระบบของ Slack ทำการ migrate architecture ของระบบมาใช้ cell-based architecture เป็นอีกหนึ่ง architecture patternโดยอธิบายรายละเอียดจาก AWS นั่นเองมีเป้าหมายเพื่อ

Read More…

สรุปเรื่องปรับปรุงประสิทธิภาพการทำงานของ APIs

หนึ่งในคำถามใน course Microservice Design ที่ Skooldio ที่น่าสนใจคือแนวทางในการปรับปรุงประสิทธิภาพการทำงานของ APIs ให้ดีขึ้นว่าเราควรทำอย่างไรบ้าง ?เท่าที่จำได้ก็จะตอบไปบางส่วนจึงได้ทำการหาและสรุปข้อมูลเพิ่มเติม ได้ดังนี้คิดว่าน่าจะพอมีประโยชน์

Read More…

บันทึกเรื่อง CDC (Change Data Capture) และ Outbox pattern

ใน course Microservices ที่ Skooldio นั้นมีคำถามเรื่องเกี่ยวกับรูปแบบของการแลกเปลี่ยนข้อมูลระหว่าง serviceว่า CDC (Change Data Capture) และ Outbox pattern มันเป็นอย่างไรจึงทำการอธิบายพร้อมตัวอย่าง code และเครื่องมือที่ผมมีโอกาสใช้งานในงานมาบ้างเลยทำการสรุปและบันทึกแนวทางไว้นิดหน่อย

Read More…

สรุปการแบ่งปันเรื่อง Microservices ตั้งแต่ design -> develop -> testing -> deploy

บันทึกการสอน และ แบ่งปันความรู้เรื่องของ Microservices ที่ Skooldioตั้งแต่การออกแบบ การพัฒนา การทดสอบ และ การ deployรวมไปถึงการ operate เรื่องต่าง ๆ เช่น monitoring และ observabilityจำนวน 4 วัน โดยครั้งนี้เขาบอกว่าเป็นรุ่นที่ 13 แล้วจึงทำการสรุปการแบ่งปันไว้นิดหน่อย

Read More…

ลองใช้งาน Apache APISIX นิดหน่อย

จากการแบ่งปันเรื่อง Architecture มานิดหน่อยหนึ่งในนั้นคือ การใช้งาน API Gateway ด้วยทำให้เกิดการแนะนำ Apache APISIX นิดหน่อย ดังนั้นเพื่อช่วยทำให้เข้าใจ ก็ลองเล่นใช้งานง่ายแบบง่าย ๆ หน่อยมาเริ่มกันเลย

Read More…

เรื่องที่น่าสนใจจาก Prime Video​ :: สำหรับการ Rearchitecture ของระบบ VDO monitoring

จากบทความเรื่อง Scaling up the Prime Video audio/video monitoring service and reducing costs by 90% ทำการอธิบายสำหรับการย้ายระบบที่อยู่ในรูปแบบของ distributed Microservicesมาเป็น Monolith หรือถ้าพูดให้ตรง ๆ คือ ย้ายออกจาก AWS Lambda นั่นเอง ซึ่งผลที่ได้รับกลับมาคือ Scale ระบบได้สูงขึ้น ระบบมีความ Resilience คือ เมื่อมีปัญหาสามารถ recovery กลับมาทำงานปกติได้ดี ที่สำคัญลดค่าใช้จ่ายไปมากกว่า 90% ดังนั้นมาดูกันว่าทาง Prime Video ทำอย่างไรบ้าง ซึ่งน่าสนใจมาก ๆ

Read More…

บันทึกเรื่อง Architecture ของระบบ Twitch

บันทึกการอ่านเรื่องของปรับปรุง architecture ของระบบ Twitchซึ่งทำการปรังปรุงระบบ Monolith มายัง Microserviceโดยมีขั้นตอนการปรับปรุงที่น่าสนใจทำการเขียนใน blog 2 ตัวคือ Breaking the Monolith at Twitch: Part One Breaking the Monolith at Twitch: Part Two

Read More…

ว่าด้วยเรื่องของ Law of Demeter ในการออกแบบ service

จากบทความเรื่อง Law of Demeter (LoD) ในการเขียน code นั้นเพื่อช่วยลด coupling ระหว่าง classหรือเป็นแนวคิดที่ช่วยให้เรามีความรู้เกี่ยวกับปลายทางที่จะเรียกให้น้อยลงทำให้มีอิสระมากยิ่งขึ้น โดยถ้าเรานำแนวคิดนี้ มาใช้กับการแยก service ด้วยก็น่าจะได้ผลดีเช่นกันนะ

Read More…