การติดตั้ง Wordpress บนเซิร์ฟเวอร์สองเครื่อง - โหลดบาลานซ์


14

ฉันต้องติดตั้ง wordpress (หนึ่งบล็อกหนึ่งโดเมนสำหรับเช่น mycompany.com/blog) บนเซิร์ฟเวอร์สองเครื่องที่ใช้ฐานข้อมูลร่วมกันบนเซิร์ฟเวอร์อื่นเซิร์ฟเวอร์สองเครื่องนี้อยู่หลัง loadbalancer และ db จะอยู่บนเซิร์ฟเวอร์อื่น เรากำลังวางแผนด้วยวิธีนี้เนื่องจากมีปริมาณการใช้งานสูง

ฉันได้ทำการติดตั้ง WordPress แบบสแตนด์อโลนบนเซิร์ฟเวอร์เดียวบน Windows 2003, 2008 ด้วย IIS6, 7 และอื่น ๆ

ฉันแค่ค้นคว้าว่าฉันจะใช้สิ่งนี้อย่างไร

อะไรคือขั้นตอนในการบรรลุเป้าหมายนี้และเมื่อทำการค้นหาฉันเห็นบางโพสต์เกี่ยวกับไดเร็กทอรี wp-content / uploads ที่จะซิงค์เป็นระยะ ๆ

ความช่วยเหลือของคุณชื่นชมมากขอบคุณสำหรับการอ่าน


สิ่งที่เราทำ:

ก) เรามีเว็บเซิร์ฟเวอร์สองเครื่องที่เชื่อมต่อกับคลัสเตอร์ซานข) สร้างไดเรกทอรีบล็อกบนซานค) แมปไดเรกทอรีไดเรกทอรีนั้นเป็นไดเรกทอรีเสมือนบนเว็บเซิร์ฟเวอร์ทั้งสอง d) ติดตั้งเวิร์ดเพรสบนหนึ่งในนั้น (เป็นโดเมนและ IIS เสมือน ไดเรกทอรีนั้นเหมือนกันสำหรับเซิร์ฟเวอร์ทั้งสอง - ตัวอย่างเช่น www.abc.com) e) ฐานข้อมูลสำหรับบล็อกนี้ตั้งอยู่บนกล่อง MySQL สองกล่อง

ในขณะที่ Wordpress กำลังนั่งอยู่บนซานดังนั้นจึงไม่ขัดแย้งกับการอัปโหลดหรืออะไรอย่างนั้น URL ของบล็อกคือ www.abc.com/blog และนั่นคือวิธีการกำหนดค่าทั้งสองอย่าง

หวังว่าจะช่วยให้ใครบางคน!


1
+1 สำหรับเอฟเฟกต์ "ฉันไม่เคยคิดที่จะทำ"
Richard Slater

1
+1 สำหรับ "ฉันหวังว่าบางคนจะให้คำตอบที่ยอดเยี่ยมกับคำแนะนำทีละขั้นตอนเกี่ยวกับวิธีที่ดีที่สุดในการใช้งานและทำไมมันจึงเป็นวิธีที่ดีที่สุด"
Jed Daniels

เพิ่งเพิ่มสิ่งที่เราทำลงไป - หวังว่านี่จะช่วยได้
rihatum

คำตอบ:


4

หากไดเรกทอรีเหล่านั้นจำเป็นต้องเหมือนกันคุณสามารถวางไว้ในเซิร์ฟเวอร์อื่นแล้วเชื่อมต่อจากระยะไกลผ่าน NFS ได้หรือไม่


เรามี SAN ดังนั้นเราจึงติดตั้ง wordpress ลงใน SAN และเพิ่มไดเรกทอรีนั้นใน IIS เป็นไดเรกทอรี WordPress / บล็อก ขอบคุณทุกคนสำหรับความคิดเห็น
rihatum

2
SAN ไม่เหมือนกับ NFS
chris

3
แชร์เซสชันด้วย Memcache แชร์ไฟล์ด้วย NFS หรือ GlusterFS แบ่งปันทราฟฟิกด้วย HAProxy หรือ Varnish (แคชด้วย!) และแชร์ฐานข้อมูลด้วยการจำลองแบบวงกลม
Tom O'Connor

GlusterFS เป็นคำแนะนำที่น่าสนใจ - ขอบคุณสำหรับสิ่งนั้น ฉันกำลังสำรวจว่าเป็นวิธีการแก้สัดส่วน Wordpress ของฉันของสิ่งคงที่
Artem Russakovskii

3

มีวิธีมากมายในการปรับปรุงประสิทธิภาพของ wordpress ที่ไม่ต้องใช้เซิร์ฟเวอร์ตัวที่สองและการปรับสมดุลโหลด คำสองคำ: "แคชทุกอย่าง"

  • ใช้ php opcode cacher (APC) คุณสามารถบรรลุอัตราการเข้าถึงแคช 90% ได้อย่างง่ายดายด้วย wordpress ในหน่วยความจำน้อยกว่า 64MB

  • เปิดใช้งานแคชแบบสอบถาม mysql คุณสามารถบรรลุอัตราการเข้าถึงแคช 65% หรือ> ได้อย่างง่ายดายด้วย mem น้อยมาก (ขึ้นอยู่กับไซต์ แต่ไม่สูงเกินไป)

ที่สำคัญที่สุดคือ:

Wordpress เป็นเว็บไซต์ที่ "อ่าน" อย่างหนัก (เทียบกับเขียน) โดยมีคำขอส่วนใหญ่ จำกัด อยู่เพียงไม่กี่ร้อยหน้า (บล็อกโพสต์) คุณสามารถเพิ่มคำขอต่อ 10 เท่าที่สองโดยให้บริการโพสต์แบบคงที่ของโพสต์ยอดนิยมของคุณ ปลั๊กอินที่ดีที่สุดคือ wp-super-cache ฉันไม่ได้เป็นบวกหากปลั๊กอินนั้นเข้ากันได้กับ 2k3 แต่ความคิดทั่วไปของการสร้างหน้าคงที่ในหน้าเว็บของคุณโดยอัตโนมัติและอัปเดตเป็นระยะเพื่อรวมความคิดเห็นใหม่การแก้ไข ฯลฯ จะเป็นทางออกที่ดีที่สุดของคุณ

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


+1 WordPress มีปลั๊กอินสำหรับแคชซึ่งสามารถทำงานได้ดีมาก ไม่มีเหตุผลที่จะเรียกใช้ WordPress ในเซิร์ฟเวอร์สองเครื่องเช่นนี้โดยมีจำนวนแคชที่เหมาะสม
WheresAlice

4
สมดุลภาระไม่ได้เป็นเพียงเกี่ยวกับประสิทธิภาพของมันยังเกี่ยวกับการเพิ่มความซ้ำซ้อน
Mike P

เมื่อคุณพูดถึง WP Super Cache คุณควรพูดถึง W3 Total Cache ด้วย
david

2

เราพบว่าสถานการณ์เดียวกันจบลงด้วยการติดตั้งปลั๊กอิน s3 ที่โฮสต์ไดเรกทอรีอัปโหลด wp ของคุณเพื่อให้คุณไม่ต้องจัดการกับการซิงค์

นี่คือสิ่งที่เราใช้: http://tantannoodles.com/toolkit/wordpress-s3/

มันใช้งานได้ดีจนถึงตอนนี้!


1
ฉันจะแนะนำไม่ให้ใช้ปลั๊กอินที่ไม่ได้รับการปรับปรุงตั้งแต่ 2552 - มันไม่มีการระบายออกและคุณอาจเสียใจในอนาคต (การเปลี่ยนแปลง S3 การรักษาความปลอดภัย ฯลฯ )
Artem Russakovskii

ในปีนี้เรายังคงทำงานได้ดีกับปลั๊กอินนี้
shennyg

@shennyg - ยังคงแข็งแกร่งอยู่ใช่ไหม
Ben

@Steve wordpress-s3 ไม่มีการระบาย ฉันจะไปกับแคชทั้งหมด w3มันสามารถซิงค์ไลบรารีสื่อของคุณ
shennyg

0

คุณต้องแบ่งปันระหว่างเซิร์ฟเวอร์ที่อัพโหลด / dir และเซสชัน dir มักจะอยู่ใน / tmp

เปลี่ยนเป็น php.ini และแบ่งปัน fs สำหรับเซสชันและอัปโหลดไฟล์ระหว่างเซิร์ฟเวอร์ผ่าน samba, nfs หรือสิ่งที่คุณต้องการ


0

ก่อนอื่นให้ตอบคำถามที่เกี่ยวข้องกันมากขึ้นที่นี่คุณอาจจะพบว่ามีประโยชน์: SAN + MySQL การจำลองแบบ - นั่นคือสิ่งที่ฉันต้องการสำหรับคลัสเตอร์ Drupal ที่สมดุล

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



-1

ในคู่ Linux ฉันจะใช้ DRBD Windows ที่เทียบเท่าคือบริการไฟล์แบบกระจาย

http://technet.microsoft.com/en-us/library/cc753479%28WS.10%29.aspx


... ยกเว้น DRBD จะให้อุปกรณ์บล็อกซึ่งแทบจะไม่เทียบเท่ากับระบบไฟล์
andol

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