Quantcast
Viewing all articles
Browse latest Browse all 2063

ทำความรู้จักกับ Dapr (Distributed application runtime)

Image may be NSFW.
Clik here to view.

เห็นใน feed มีสิ่งที่น่าสนใจคือ Dapr (Distributed application runtime)
คำถามแรกคือ มันคืออะไร
ถูกสร้างมาเพื่ออะไร
จึงทำการอ่านและสรุปไว้นิดหน่อย

Distributed application runtime คืออะไร

ระบบส่วนใหญ่จะทำงานแบบกระจายหรือ Distributed อยู่แล้ว
นั่นคือระบบต่าง ๆ กระจายทำงานของตนเองไป
แต่ว่าส่วนงานต่าง ๆ ต้องทำงานร่วมกัน
จึงจำเป็นต้องการตัวจัดการต่าง ๆ ดังนี้

  • State management ไม่ว่าจะอยู่ใน Data store ทั้ง RDBMS และ NoSQL เพื่อจัดการกับ state ต่าง ๆ ของระบบงาน
  • การติดต่อสื่อสารระหว่าง system/service/component ซึ่งมีทั้งแบบ service-to-service และ event-driven (Pub/Sub)
  • ในการติดต่อสื่อสารแบบ service-to-service จำเป็นต้องมีการจัดการเรื่อง retry, rate limit และ circuite breaking อีกด้วย เพื่อให้การทำงานของระบบน่าเชื่อถือมากขึ้น
  • เรื่องของ Observability ทั้ง Distributed tracing, Health check, Logging และ Metrics
  • จัดการ resource ต่าง ๆ เช่น Secret เป็นต้น

นี่คือ สิ่งพื้นฐานสำหรับระบบที่ทำงานแบบกระจาย

โดยท่ีทาง Microsoft ได้สร้าง open source project ชื่อว่า Dapr ออกมา

เพื่อช่วยจัดการระบบงานตามความต้องการพื้นฐานที่อธิบายมา
เป็น implementation ของ Distributed application runtime นั่นเอง
ทำให้สามารถจัดการระบบงานในรูปแบบต่าง ๆ ใน runtime เดียวกันได้

Image may be NSFW.
Clik here to view.

ในแต่ละส่วนการทำงานของ Dapr จะเป็นอิสระต่อกัน

โดยที่ Dapr นั้นจะทำงานเหนือ infrastructure ซึ่งเป็นอะไรก็ได้
ทั้ง On-premise และ Cloud sytem
แสดงดังรูป

Image may be NSFW.
Clik here to view.

อีกเรื่องคือ Dapr นั้นจะเน้นขึ้นไปใกล้ชิดกับ application มากกว่า Kubernetes

ซึ่งสามารถนำ Dapr ไป run บน Kubernetes ได้
ด้วยการสร้าง sidecar container เข้ามาจัดการ Pods ต่าง ๆ
หรือจะ deploy แบบ standalone ก็ได้
ต่างจากกับพวก Service mesh เช่น Istio และ Linkerd
จะเน้นไปที่ network infrastructure layer มากกว่า
สำหรับการติดต่อสื่อสารระหว่าง service ผ่าน sidecar
แต่ก็ไม่ได้เพิ่ม feature ใด ๆ เข้ามาเลย

ไปเจอรูปนี้มา น่าสนใจดี

เกี่ยวกับ Dapr และ Service mesh

Image may be NSFW.
Clik here to view.
https://blog.nillsf.com/index.php/2020/04/26/introduction-to-dapr/

Viewing all articles
Browse latest Browse all 2063

Trending Articles