NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
TH

เว็บเซิร์ฟเวอร์

nginx vs Apache: เซิร์ฟเวอร์ใดรันเวิร์กโหลดใด

nginx และ Apache เป็นสองเอ็นจิ้นที่สแต็กโฮสติ้งสามารถสร้างขึ้นได้ และการต่อสู้จะสิ้นสุดลงทันทีที่มีการตั้งชื่อเวิร์กโหลด nginx เป็นเครื่องที่ขับเคลื่อนด้วยเหตุการณ์และมีขนาดเล็กสำหรับเนื้อหาคงที่และการทำพร็อกซีย้อนกลับ Apache เป็นเซิร์ฟเวอร์แอปพลิเคชันที่มีโมดูลมากมายซึ่งมีการแทนที่ไดเร็กทอรีและระบบนิเวศมีโฮสติ้งที่ใช้ร่วมกัน นี่คือตารางการตัดสินใจที่ตรงไปตรงมาเบื้องหลังบทความเฉพาะทั้งสองบทความ

ประเด็นสำคัญ

  1. โมเดลการทำงานพร้อมกันจะตัดสินความได้เปรียบ: ลูปเหตุการณ์ async ของ nginx จัดการการเชื่อมต่อพร้อมกันนับพันครั้งด้วยกระบวนการของผู้ปฏิบัติงานจำนวนหนึ่ง ซึ่งเป็นเหตุผลว่าทำไมจึงควบคุมระดับสแตติกหนักและพร็อกซีย้อนกลับ MPM เหตุการณ์ของ Apache ปิดช่องว่างนั้นได้มาก แต่ยังคงจัดสรรต่อการเชื่อมต่อบนฮาร์ดแวร์เดียวกันมากขึ้น
  2. ปรัชญาการกำหนดค่าขัดแย้งกัน: Apache มี .htaccess และการแทนที่ต่อไดเร็กทอรี (ความสะดวกสบายในการก่อตั้งโฮสติ้งที่ใช้ร่วมกัน) ในขณะที่การกำหนดค่า nginx นั้นคงที่ต่อไซต์ รวมถึงไฟล์ที่มีระเบียบวินัยในการโหลดซ้ำ เอฟเฟกต์ในแต่ละวันเป็นแบบทีม ใครแก้ไขการกำหนดค่า และที่ไหน
  3. สแต็กไฮบริดนั้นถูกต้องตามกฎหมาย ไม่ใช่ cop-out: nginx ที่อยู่ข้างหน้าเป็นตัวยุติ TLS และเซิร์ฟเวอร์แบบคงที่ โดยมี Apache อยู่ด้านหลังสำหรับแอปพลิเคชัน เป็นรูปแบบที่ผ่านการทดสอบการต่อสู้ซึ่งยังคงรักษาเครื่องมือ htaccess ในขณะที่คว้าประสิทธิภาพของ nginx edge; ค่าใช้จ่ายเป็นอีกชั้นหนึ่งในการแก้ไขปัญหาและตรวจสอบ
  4. โดยที่แต่ละเอ็นจิ้นชนะทันที: nginx ชนะการเชื่อมต่อที่ต้องใช้พร็อกซีที่หนักหน่วง งาน Keep-alive Edge และการระบายไคลเอ็นต์ที่ช้า Apache ได้รับพลังการกำหนดค่าต่อไดเรกทอรี ความเข้ากันได้ของโมดูลแบบเดิม และคุณสมบัติโฮสติ้งที่ใช้ร่วมกัน mod_security/mod_php-class ที่ไม่มีระบบนิเวศอื่นใดที่เติบโตเต็มที่
  5. LiteSpeed ​​เป็นตัวเลือกที่สามที่โฮสต์จำนวนมากเข้าถึงได้ (บทความเฉพาะของเรากล่าวถึง): ความเข้ากันได้ของ Apache แบบดรอปอินกับการทำงานพร้อมกันที่ขับเคลื่อนด้วยเหตุการณ์ ได้รับใบอนุญาตต่อคอร์ ดังนั้นจึงมีเส้นทางกลาง 'แทนที่ Apache, Keep config' สำหรับเศรษฐศาสตร์โฮสติ้งที่ใช้ร่วมกัน
  6. ขั้นตอนการตัดสินใจที่ยึดถือในหมวดหมู่เว็บเซิร์ฟเวอร์ของเรา: ตั้งชื่อปริมาณงาน (nginx ที่ Edge, Apache ที่อยู่เบื้องหลังแอป htaccess ที่ใช้งานหนัก), รักษาทั้งสองบทบาทให้ชัดเจนเมื่อไฮบริด, เปรียบเทียบการรับส่งข้อมูลของคุณเอง (ไม่ใช่การวัดประสิทธิภาพแบบนิตยสาร) และจำไว้ว่านี่คือการตัดสินใจเดียวที่คุณสามารถทำซ้ำได้เนื่องจากกลไกทั้งสองอยู่ร่วมกันอย่างมีความสุข

บันทึกจากหน้างาน

ลูกค้าที่สอนเราเกี่ยวกับนิสัยการใช้สแต็กแบบไฮบริด: nginx อยู่ข้างหน้าสำหรับ TLS และสแตติกส์ ส่วน Apache อยู่เบื้องหลังแบกรับตำนาน htaccess มานานถึง 12 ปี ไม่มีใครกล้าเขียนใหม่ คำตอบที่ตรงไปตรงมาไม่ใช่ 'โยกย้ายไปยัง nginx' แต่เป็น 'ตั้งชื่อปริมาณงานต่อระดับ' พวกเขายังคงใช้รูปทรงนั้นมาจนทุกวันนี้ ไร้ความตื่นเต้นและได้รับการตกแต่งให้พร้อมใช้งาน

คำถามที่พบบ่อย

เราจำเป็นต้องเลือกอย่างใดอย่างหนึ่งหรือไม่?

ไม่: Reverse Proxy ที่อยู่ด้านหน้าแอปพลิเคชันเซิร์ฟเวอร์เป็นรูปแบบที่ทันสมัยตามปกติ การตัดสินใจที่แท้จริงเพียงอย่างเดียวคือเครื่องยนต์ตัวไหนจะไปที่ไหน การวิ่งทั้งสองอย่างถือเป็นการฝึกฝนมาตรฐาน ไม่ใช่การยอมรับความพ่ายแพ้

ไหนเร็วกว่าสำหรับ WordPress?

ด้วยเลเยอร์แคชที่ดี ทั้งสาม (nginx, Apache, LiteSpeed) ให้บริการ WordPress ได้ดี ลำดับสุดท้ายในการทดสอบของเราอยู่ที่การปรับแต่งแคชมากกว่าเครื่องยนต์ ตัวเลือกกลไกมีความสำคัญที่ Edge และระดับพร็อกซีมากกว่าที่อยู่เบื้องหลังแคช

อันไหนเรียนง่ายกว่ากัน?

ทั้งสองสามารถเรียนรู้ได้ภายในหนึ่งสัปดาห์สำหรับโฮสติ้งเสมือนขั้นพื้นฐานและ TLS แรงเสียดทานแตกต่าง: เอกสาร Apache คุ้นเคยกับทหารผ่านศึกในอุตสาหกรรมมากกว่า การกำหนดค่า nginx นั้นสั้นกว่า แต่เปิดเผยปุ่มควบคุมพร็อกซีก่อนหน้านี้

มีความแตกต่างด้านความปลอดภัยที่สำคัญหรือไม่?

ทั้งสองมี CVE และมีความปลอดภัยทันทีเมื่อแกะกล่องในเวอร์ชันที่ได้รับการบำรุงรักษา พื้นผิวความเสี่ยงคือพื้นผิวการกำหนดค่า วัฒนธรรม .htaccess และโมดูลดั้งเดิมสำหรับ Apache โมดูลที่คอมไพล์โดยบุคคลที่สาม รวมถึงข้อผิดพลาดในลำดับการกำหนดค่าสำหรับ nginx ความเร็วแพตช์มีความสำคัญมากกว่ายี่ห้อเครื่องยนต์

Kinetikatech ช่วยเรื่อง เว็บเซิร์ฟเวอร์ ได้อย่างไร

ข้อเสนอง่าย ๆ แบบนี้: การตั้งค่า การปรับแต่ง และความปลอดภัยของเว็บเซิร์ฟเวอร์ในสภาพแวดล้อมโปรดักชันและงานพัฒนา ส่งให้บริการ การเพิ่มความเร็วเว็บไซต์และการจัดการเซิร์ฟเวอร์ ของเราดูแล มีการประเมินอย่างเหมาะสม ลงมือแบบสะอาด และมีคนเฝ้าตลอด 24 ชั่วโมง

คุยกับช่างเทคนิค

เซิร์ฟเวอร์มีปัญหา? เว็บถูกแฮก? โหลดช้า?

ตอบสนองเหตุกรณ์ฉุกเฉินใน 30 นาที — ตลอด 24 ชั่วโมง ทุกวัน

ขอความช่วยเหลือฉุกเฉิน support@kinetikatech.com