มันคุ้มค่าที่จะดูเว็บเซิร์ฟเวอร์อื่นที่ไม่ใช่ apache หรือไม่?


13

ฉันมักจะใช้งานเว็บไซต์ของฉันภายใต้ apache โดยค่าเริ่มต้น ฉันเคยได้ยินสิ่งต่าง ๆ เกี่ยวกับ NGinX แล้วและฉันก็สงสัยว่าภายใต้เงื่อนไขใดจะดีกว่า นอกจาก apache และ Nginx แล้วตัวเลือกอื่น ๆ สำหรับเว็บเซิร์ฟเวอร์คืออะไรและมีประโยชน์อย่างไรบ้าง


3
คำถามที่กว้างมาก เพื่อที่จะตอบคำถาม "คุ้มค่า" ฉันคิดว่าคุณต้องให้คำอธิบายเพิ่มเติมเกี่ยวกับบริบทของคุณอีกเล็กน้อย
jessegavin

คำตอบ:


6

ใช่.

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

ดังนั้นฉันจึงโหลด 99% ของเนื้อหาสแตติกจาก apache ถึง nginx apache ถูกทิ้งไว้ให้บริการ php ทั้งหมด โหลดบนเว็บเซิร์ฟเวอร์ของฉันลดลงเหลือน้อยและไม่มีโหลดเพิ่มสูง

หากคุณต้องการได้รับประโยชน์จากเซิร์ฟเวอร์ของคุณมากขึ้นขอให้เซิร์ฟเวอร์น้ำหนักเบาบางตัวให้บริการเนื้อหาแบบคงที่ทั้งหมด


ทำไมภาระบนโลกถึงแตกต่างกัน?

+1, ฉันก็ทำมันย้อนกลับไปได้ดีมาก
theotherreceive

3
@Kinopkio nginx ไม่จำเป็นต้องมีกระบวนการ / เธรดต่อการเชื่อมต่อดังนั้นจึงสามารถให้บริการลูกค้าจำนวนเดียวกันโดยใช้ทรัพยากรน้อยกว่า apache
theotherreceive

โอเคขอโทษที่ฉันคิดในแง่ของแบนด์วิดธ์มากกว่าโหลดเซิร์ฟเวอร์

3

อาปาเช่นั้นค่อนข้างหนักและสามารถล้มได้เมื่ออยู่ภายใต้ภาระหนัก มีเซิร์ฟเวอร์น้ำหนักเบาที่พร้อมใช้งานรวมถึง nginx, lighttpd และ cherokee

ตัวเลือกที่มีน้ำหนักเบาเหล่านี้สามารถตั้งค่าเพื่อให้บริการไฟล์แบบคงที่ได้อย่างรวดเร็วและมอบหมายงานด้านเซิร์ฟเวอร์แบบไดนามิกให้กับ Apache


1

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

สำหรับการเปรียบเทียบของเว็บเซิร์ฟเวอร์ให้ตรวจสอบการเปรียบเทียบของซอฟต์แวร์เว็บเซิร์ฟเวอร์


0

Netcraftติดตามส่วนแบ่งการตลาดของเว็บเซิร์ฟเวอร์และ IIS ระบุว่าเป็นอันดับสองรองจาก Apache ที่มีส่วนแบ่ง 26.03% (ณ เดือนกรกฎาคม 2010) สิ่งนี้อิงจากการสำรวจไซต์กว่า 205 ล้านแห่ง

ลิงค์นี้มีเหตุผลว่าทำไมคุณควรตรวจสอบ IIS7 ถ้าคุณใช้ Apache วันนี้


ปัญหาของ IIS7 บน Linux คือ .... มันไม่รัน run run .. มันไม่ run run ...
Tim Post

ตามความเข้าใจในคำถามไม่มีอะไรที่บอกว่า OP ต้องการเว็บเซิร์ฟเวอร์สำหรับระบบปฏิบัติการหนึ่ง ๆ ... หรือว่าฉันทำอะไรหายไป? ฉันคิดว่าเขาอาจเลือกใช้ Windows เช่นกัน
mvark

0

มันขึ้นอยู่กับสิ่งที่คุณทำ

หากคุณมีเนื้อหาคงที่คุณไม่จำเป็นต้องใช้ Apache nginx หรือ lighttpd จะให้บริการคุณได้ดี

หากคุณมีทั้งแบบคงที่และแบบไดนามิก (เช่น Perl หรือ PHP) แต่เป็นเว็บไซต์ขนาดเล็กคุณยังสามารถเลือกใช้ตัวเลือกอย่างใดอย่างหนึ่งรวมทั้ง FastCGI หรือเพียงแค่โยนสิ่งทั้งหมดลงใน Apache

หากคุณให้บริการทับทิมพร้อมกับเนื้อหาสแตติกของคุณmod_passengerใน Apache ควรให้บริการคุณได้ดีโดยใช้ nginx / lighttpd / etc ที่ให้บริการเนื้อหาคงที่ของคุณ

สำหรับ Python (ความเชี่ยวชาญของฉัน) คุณสามารถใช้ Apache mod_pythonหากคุณต้องการ แต่เตรียมความพร้อมสำหรับความช้า mod_wsgiดีกว่า แต่คุณยังมีโอเวอร์เฮดของ Apache ซึ่งใช้ได้ถ้าคุณมีทราฟิกแบบไดนามิกจำนวนมาก Apache เป็นนักกีฬายกหนักตลอดเวลา

หากคุณไม่มีทราฟฟิกจำนวนมากให้ดูที่ระบบใหม่ ๆ เช่นgunicornหรือuWSGIหรือเซิร์ฟเวอร์ all-in-one Cherokee เพื่อจัดการ Python ของคุณ เชโรกีจัดการกับไฟล์คงที่เช่นกัน ที่เหลือคุณยังคงต้องการใช้ nginx / lighttpd เพื่อแสดงเนื้อหาคงที่

Java และภาษาอื่น ๆ ฉันไม่รู้

สิ่งที่ยอดเยี่ยมเกี่ยวกับการใช้ nginx คือมันสามารถกำหนดค่าได้อย่างน่าอัศจรรย์ ดังนั้นตั้งค่าเซิร์ฟเวอร์สแตติกสองตัวที่มีโดเมนย่อยต่างกันหนึ่งรายการสำหรับ CSS, รูปภาพและ JS ด้วยวิธีนี้คุณจะช่วยหลีกเลี่ยงการ จำกัด ไฟล์ได้ 2 ไฟล์ต่อโดเมนในแต่ละครั้ง ตั้งค่าเซิร์ฟเวอร์หลายเครื่องจากนั้นตั้งค่าพร็อกซี / nginx / load-balancer หน้าเซิร์ฟเวอร์เหล่านั้นเพื่อให้แน่ใจว่าเนื้อหาสแตติกทั้งหมดของคุณพร้อมใช้งานเสมอ

Basicaly ใช่ดูมากกว่า Apache!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.