traefik - พร็อกซีสำหรับแอปพลิเคชันแบบ Cloud Native
(github.com)-
โอเพนซอร์ส HTTP รีเวิร์สพร็อกซีที่เหมาะกับ k8s, docker และไมโครเซอร์วิส
-
เปลี่ยนการตั้งค่าได้โดยไม่ต้องรีสตาร์ต
-
รองรับอัลกอริทึมการทำโหลดบาลานซ์หลายแบบ
-
ใบรับรองอัตโนมัติด้วย Let's Encrypt
-
Circuit Breaker/Retry
-
เว็บ UI และ REST API ที่เรียบง่าย
-
รองรับ Websocker, HTTP/2, GRPC
-
รองรับเมตริก เช่น Prometheus, Datadog, Statsd, InfluxDB
-
ซิงเกิลไบนารีที่สร้างด้วย Go
5 ความคิดเห็น
เมื่อก่อนเรียกว่ารีเวิร์สพร็อกซี แต่ตอนนี้เปลี่ยนมาเรียกว่าแอปพลิเคชันพร็อกซีแล้วสินะ 555
เคยลองจับมาเล่นกับโปรเจกต์เล็ก ๆ มาก่อน พอตั้งค่าไว้ครั้งหนึ่งแล้วก็แค่ใส่เพิ่มไม่กี่บรรทัดในไฟล์ Docker Compose เดิมและไฟล์ที่สร้างใหม่ มันก็ทำ reverse proxy ให้เอง ใช้งานได้สะดวกดี
ในเว็บไซต์ทางการมีผลการ benchmark เทียบกับ nginx ตอนเวอร์ชัน 1.4 อยู่
https://doc.traefik.io/traefik/v1.4/benchmarks/
ให้ประสิทธิภาพได้ 85% เมื่อเทียบกับ nginx
โดยปกติแล้วมักใช้ nginx เป็น reverse proxy กันมาก แต่ในสภาพแวดล้อมบนคลาวด์ที่ประกอบด้วยคอนเทนเนอร์นั้น traefik ใช้งานได้สะดวกกว่า nginx มาก
เนื่องจากเป็นบทความเมื่อ 15 เดือนก่อน เลยสงสัยว่าการประเมิน Docker Swarm กับ k8s อาจมีการเปลี่ยนแปลงไปมากหรือเปล่าครับ? (เพราะคิดว่าเป็นสายงานที่ช่วงนี้เปลี่ยนแปลงเร็วมากจริง ๆ)
อ้อ ผมโพสต์ลิงก์นี้เพราะดูแค่ Traefik มากกว่าฝั่ง Docker Swarm ครับ
ช่วงนี้จากบรรยากาศแล้ว น่าจะไม่จำเป็นต้องใช้ Docker Swarm เสมอไป ใช้อะไรเบา ๆ อย่าง k3s ก็น่าจะได้เหมือนกัน