
Microservices ด้วย Symfony
API Gateway, service discovery, distributed transactions, event-driven architecture, resilience patterns
1API Gateway ในสถาปัตยกรรม microservices คืออะไร?
API Gateway ในสถาปัตยกรรม microservices คืออะไร?
คำตอบ
API Gateway คือจุดเข้าใช้งานเพียงจุดเดียวสำหรับทุกคำขอจากไคลเอนต์ไปยัง microservices มันทำหน้าที่เป็น reverse proxy ที่กำหนดเส้นทางคำขอไปยังบริการที่เหมาะสม จัดการการยืนยันตัวตน, rate limiting, การแคช และการรวมผลลัพธ์ ในระบบนิเวศ Symfony โซลูชันอย่าง Kong, Traefik หรือการพัฒนาแบบกำหนดเองด้วย Symfony สามารถทำหน้าที่เป็น Gateway ได้
2pattern ใดที่ช่วยให้จัดการ distributed transactions ข้าม microservices หลายตัวได้โดยไม่ต้องใช้ global locking?
pattern ใดที่ช่วยให้จัดการ distributed transactions ข้าม microservices หลายตัวได้โดยไม่ต้องใช้ global locking?
คำตอบ
pattern Saga จัดการ distributed transactions โดยแบ่งมันออกเป็นลำดับของทรานแซกชันในระดับท้องถิ่น แต่ละบริการจะดำเนินการทรานแซกชันท้องถิ่นของตนและเผยแพร่ event เพื่อกระตุ้นทรานแซกชันถัดไป เมื่อเกิดความล้มเหลว จะมีการดำเนินการ compensating transactions เพื่อย้อนกลับการเปลี่ยนแปลง pattern นี้หลีกเลี่ยงการล็อกแบบกระจายและเพิ่มความพร้อมใช้งาน
3Symfony Messenger ช่วยอำนวยความสะดวกในการสื่อสารแบบอะซิงโครนัสระหว่าง microservices อย่างไร?
Symfony Messenger ช่วยอำนวยความสะดวกในการสื่อสารแบบอะซิงโครนัสระหว่าง microservices อย่างไร?
คำตอบ
Symfony Messenger ช่วยให้ส่งข้อความไปยัง transport ภายนอกอย่าง RabbitMQ, Amazon SQS หรือ Redis ได้ แต่ละ microservice สามารถเผยแพร่ข้อความไปยัง bus และบริการอื่นจะบริโภคข้อความเหล่านั้นแบบอะซิงโครนัส ข้อความจะถูก serialize (JSON, Protobuf) และสามารถข้ามขอบเขตของบริการได้ ทำให้เกิด loose coupling
pattern Circuit Breaker คืออะไร และจะนำไปใช้กับ Symfony ได้อย่างไร?
ข้อได้เปรียบหลักของรูปแบบ Database per Service ในสถาปัตยกรรม microservices คืออะไร?
+19 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Symfony อื่นๆ
PHP สมัยใหม่ (8.1+)
พื้นฐาน Symfony
Routing & Controllers
Twig & Templates
พื้นฐาน Doctrine ORM
ฟอร์ม Symfony
การตรวจสอบความถูกต้องของข้อมูล
Dependency Injection & Services
Security & Authentication
Doctrine ขั้นสูง
API Platform
Serializer Component
Events & Event Subscribers
Console & Commands
Messenger Component
HTTP Client
Cache & ประสิทธิภาพ
Workflow Component
Testing Symfony
Mailer Component
การแปลและ i18n
EasyAdmin Bundle
สถาปัตยกรรม Symfony
ประสิทธิภาพและการเพิ่มประสิทธิภาพ
ความปลอดภัยขั้นสูง
Custom Bundles
Real-time & WebSockets
Deployment & DevOps
เชี่ยวชาญ Symfony สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี