รูปแบบ Event-driven ด้วย EventBridge
การ Deploy แอปพลิเคชันบน AWS
Dunieski Otano
Amazon Web Services Solutions Architect
คำสั่งซื้อหนึ่งรายการ สี่ปฏิกิริยา
คำสั่งซื้อหนึ่งรายการต้องส่งถึง billing, fulfillment, analytics และ email
การเรียกตรงทั้งสี่ระบบนั้นเปราะบางและช้า
event เดียวกระจายไปยังทุก consumer
เลือก messaging service ให้เหมาะกับงาน
SQS
: หนึ่ง queue, หนึ่ง consumer group, at-least-once
SNS
: pub/sub, push ข้อความเดียวไปยังหลาย subscriber
EventBridge
: กำหนดเส้นทาง event ตามเนื้อหาไปยังหลาย target
Kinesis Data Streams
: streaming แบบเรียงลำดับและ replay ได้
รูปแบบ fanout
event หนึ่งรายการต้องส่งถึง
หลาย consumer
พร้อมกัน
publish ไปยัง
SNS topic
แต่ละ
SQS queue
สมัครรับ topic นั้น
ทุก consumer ได้รับสำเนาของตัวเองโดยอิสระ
การกรองเพื่อให้ consumer ได้รับเฉพาะสิ่งที่ต้องการ
หากไม่มี filter ทุก subscriber จะได้รับ
ทุก event
SNS subscription filter policies
: กรองตาม message attribute
EventBridge content filters
: จับคู่กับฟิลด์ใน event
แต่ละ consumer ได้รับเฉพาะ event ที่เกี่ยวข้อง
การกำหนดเส้นทางด้วย EventBridge
Event bus
: รับ event จากหลายแหล่ง
Rule
: รูปแบบ event ที่ใช้จับคู่ event ที่ต้องการ
Target
: ปลายทางที่ส่ง event ที่ตรงกัน
event หนึ่งรายการสามารถส่งไปยังหลาย target
Streaming ด้วย Kinesis Data Streams
ข้อมูลไหลแบบ
ต่อเนื่อง real-time
ระเบียนภายใน shard เดียวกันเรียง
ลำดับ
Replay ได้
: consumer อ่านย้อนหลังจากจุดใดก็ได้
หลาย consumer อ่าน stream
เดียวกัน
อย่างอิสระ
เหมาะกับ clickstream, telemetry และข้อมูล throughput สูง
Lambda ในฐานะ event consumer
Lambda ทริกเกอร์ได้จาก
SQS, SNS, EventBridge และ Kinesis
Event source mapping
คอย poll SQS และ Kinesis แทน
SNS และ EventBridge
push
event ไปยัง Lambda โดยตรง
ประมวลผลใกล้ real-time โดยไม่ต้องจัดการ server
มาฝึกกันเถอะ!
การ Deploy แอปพลิเคชันบน AWS
Preparing Video For Download...