Tengine คืออะไร และเหมาะกับงานแบบไหน
Tengine คือเว็บเซิร์ฟเวอร์ที่พัฒนาต่อจาก Nginx โดยทีมของ Alibaba เพิ่มความสามารถที่เกิดจากโจทย์ทราฟฟิกระดับสูงมาก ใช้ไฟล์ตั้งค่ารูปแบบเดียวกับ Nginx จึงย้ายมาได้โดยแทบไม่ต้องเรียนใหม่
- หมวดหมู่
- Web Server และ Proxy
- ติดตั้งบนเซิร์ฟเวอร์เองได้
- ได้
- สเปกเริ่มต้นที่แนะนำ
- 1 vCPU · RAM 1 GB
- ไลเซนส์
- BSD (โอเพนซอร์ส)
- เว็บทางการ
- เปิดเว็บไซต์
- ISO/IEC 27001
- ISO 22301
- ISO 20000-1
- CSA-STAR
Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย
Tengine คืออะไร
Tengine เกิดจากการที่ทีมผู้ดูแลระบบขนาดใหญ่ต้องการความสามารถบางอย่างที่ Nginx ยังไม่มีในเวลานั้น จึงพัฒนาต่อยอดแล้วเปิดเป็นโอเพนซอร์ส ความสามารถที่เพิ่มมาเน้นไปที่การตรวจสุขภาพเครื่องหลังบ้าน การจัดการโมดูลแบบไดนามิก และการปรับค่าโดยไม่ต้องรีสตาร์ต
เพราะใช้รูปแบบไฟล์ตั้งค่าเดียวกับ Nginx ทีมที่คุ้นเคยอยู่แล้วจึงย้ายมาได้เร็ว และโมดูลของ Nginx ส่วนใหญ่ยังใช้งานร่วมกันได้
ข้อควรพิจารณาคือชุมชนและเอกสารภาษาอังกฤษเล็กกว่า Nginx มาก การหาคำตอบเวลาติดปัญหาจึงยากกว่า องค์กรส่วนใหญ่ที่ไม่ได้ต้องการความสามารถเฉพาะเหล่านั้นจึงยังใช้ Nginx เป็นหลัก
ความสามารถเด่นของ Tengine
ใช้ไฟล์ตั้งค่าแบบเดียวกับ Nginx
ย้ายมาได้โดยแทบไม่ต้องเขียนกฎใหม่ และทีมใช้ความรู้เดิมได้
ตรวจสุขภาพเครื่องหลังบ้านในตัว
ถอดเครื่องที่ไม่ตอบสนองออกจากวงกระจายโหลดได้โดยไม่ต้องใช้โมดูลเสริม
โหลดโมดูลแบบไดนามิก
เพิ่มหรือถอดโมดูลได้โดยไม่ต้องคอมไพล์ใหม่ทั้งชุด
เครื่องมือดูสถานะละเอียด
ดูสถิติการทำงานเชิงลึกเพื่อจูนระบบที่รับทราฟฟิกสูง
ใช้ Tengine ทำอะไรได้บ้าง
- ระบบที่ต้องรับทราฟฟิกสูงมากและต้องการตรวจสุขภาพเครื่องหลังบ้านในตัว
- ทีมที่คุ้นกับ Nginx อยู่แล้วแต่ต้องการความสามารถเพิ่มบางอย่าง
- ระบบที่ต้องปรับค่าเซิร์ฟเวอร์บ่อยโดยไม่อยากรีสตาร์ต
- สภาพแวดล้อมที่ต้องการโมดูลเฉพาะที่ Tengine ให้มา
สเปก Cloud Server ที่แนะนำ
| ระดับการใช้งาน | vCPU | RAM | Disk |
|---|---|---|---|
| เริ่มต้นเว็บหรือ Proxy ขนาดเล็ก | 1 vCPU | 1 GB | NVMe 20 GB |
| แนะนำชั้นหน้าของระบบที่มีผู้ใช้ต่อเนื่อง | 2 vCPU | 4 GB | NVMe 40 GB |
| ทราฟฟิกสูงระบบที่รับการเชื่อมต่อพร้อมกันจำนวนมาก | 4 vCPU ขึ้นไป | 8 GB ขึ้นไป | NVMe 80 GB |
ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ
วิธีติดตั้ง Tengine บน Cloud Server ของ THAI DATA CLOUD
ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server
สิ่งที่ต้องเตรียม
- Ubuntu Server 24.04 LTS หรือ Rocky Linux 9
- เครื่องมือคอมไพล์ เพราะส่วนใหญ่ติดตั้งจากซอร์ส
- ความคุ้นเคยกับไฟล์ตั้งค่าแบบ Nginx
ทดสอบบน Ubuntu Server 24.04 LTS
- 1
ติดตั้งเครื่องมือและไลบรารีที่ต้องใช้
sudo apt update sudo apt -y install build-essential libpcre3-dev zlib1g-dev libssl-dev wget - 2
ดาวน์โหลดและคอมไพล์
ตรวจเลขเวอร์ชันล่าสุดจากเว็บทางการก่อนดาวน์โหลด
cd /usr/local/src sudo wget https://tengine.taobao.org/download/tengine-x.y.z.tar.gz sudo tar xzf tengine-x.y.z.tar.gz cd tengine-x.y.z sudo ./configure --prefix=/usr/local/tengine --with-http_ssl_module sudo make && sudo make install - 3
ตั้งค่าเว็บไซต์
ใช้ไวยากรณ์เดียวกับ Nginx ทุกประการ จึงคัดลอกไฟล์ตั้งค่าเดิมมาใช้ได้
server { listen 80; server_name www.example.com; root /var/www/site; index index.html; location / { try_files $uri $uri/ =404; } } - 4
ตั้งเป็นบริการของระบบ
สร้างไฟล์ systemd unit เพื่อให้เริ่มทำงานอัตโนมัติหลังรีบูตและรีสตาร์ตเมื่อล่ม
- 5
ออกใบรับรอง SSL
ใช้ certbot ในโหมด webroot แล้วชี้ไฟล์ใบรับรองในไฟล์ตั้งค่า เช่นเดียวกับการตั้งค่า Nginx
ถ้าไม่ได้ต้องการความสามารถเฉพาะของ Tengine การใช้ Nginx จากที่เก็บแพ็กเกจของระบบจะดูแลง่ายกว่ามาก เพราะได้รับแพตช์ความปลอดภัยอัตโนมัติ
พอร์ตที่ต้องเปิดบน Firewall
| พอร์ต | โปรโตคอล | ใช้ทำอะไร |
|---|---|---|
| 80 | TCP | HTTP และการตรวจสอบโดเมนของ Let's Encrypt |
| 443 | TCP | HTTPS |
สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ
- ติดตามประกาศความปลอดภัยของโครงการเอง เพราะไม่ได้รับแพตช์ผ่านที่เก็บแพ็กเกจของระบบ
- ปิดการแสดงเวอร์ชันของเซิร์ฟเวอร์
- บังคับ HTTPS และปิดโปรโตคอล TLS รุ่นเก่า
- ตั้งจำกัดอัตราการเรียกสำหรับปลายทางที่อ่อนไหว
ทำไมควรรัน Tengine บน Cloud Server ของ THAI DATA CLOUD
Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง
ใช้ทรัพยากรน้อยเช่นเดียวกับ Nginx จึงคุ้มเมื่อวางเป็นชั้นหน้าบน Cloud Server ในไทย
ทำหน้าที่กระจายโหลดไปยังเครื่องหลังบ้านในวง Private Network ได้โดยไม่มีค่าทราฟฟิกภายใน
เหมาะกับทีมที่มีคนดูแลระบบเองและต้องการควบคุมการคอมไพล์และโมดูลอย่างละเอียด
คำถามที่พบบ่อยเกี่ยวกับ Tengine
ควรใช้ Tengine แทน Nginx ไหม
สำหรับงานทั่วไปไม่จำเป็น เพราะ Nginx มีชุมชน เอกสาร และแพตช์ผ่านที่เก็บแพ็กเกจของระบบซึ่งดูแลง่ายกว่า Tengine เหมาะเมื่อคุณต้องการความสามารถเฉพาะที่มันเพิ่มมาจริง ๆ
ไฟล์ตั้งค่าของ Nginx ใช้ได้เลยไหม
ใช้ได้เกือบทั้งหมดเพราะเป็นไวยากรณ์เดียวกัน แต่ควรทดสอบทุกกฎบนเครื่องทดสอบก่อน โดยเฉพาะส่วนที่พึ่งโมดูลเฉพาะของแต่ละฝั่ง
ได้รับแพตช์ความปลอดภัยอย่างไร
ต้องติดตามประกาศจากโครงการเองและคอมไพล์ใหม่เมื่อมีรุ่นแก้ไข ต่างจาก Nginx ที่ได้รับแพตช์ผ่านการอัปเดตระบบตามปกติ ซึ่งเป็นภาระที่ต้องประเมินก่อนเลือกใช้
ทางเลือกอื่นที่คล้ายกับ Tengine
แอปอื่นในหมวด Web Server และ Proxy
- #3Nginxเว็บเซิร์ฟเวอร์และ Reverse Proxy ที่เร็วที่สุด
- #8Apache HTTP Serverเว็บเซิร์ฟเวอร์รุ่นคลาสสิกที่รองรับ .htaccess
- #35TraefikReverse Proxy สำหรับยุค Container
- #36HAProxyLoad Balancer ระดับ Production
- #37Caddyเว็บเซิร์ฟเวอร์ที่ออก SSL อัตโนมัติ
- Envoy ProxyService Proxy สำหรับสถาปัตยกรรม Microservices
บริการของ THAI DATA CLOUD ที่เกี่ยวข้อง
ให้เราติดตั้ง Tengine ให้ฟรี บน Cloud Server ในไทย
แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด