ฉันต้องใช้ RAM VPS จำนวนเท่าใดในการเรียกใช้ Wordpress, Apache, SVN และ MySQL


20

ใครบ้างมีรูป ballpark ของ VPS ram (ไม่ระเบิด) ฉันจะต้องมี apache ด้วย wordpress และ subversion รวมทั้งอินสแตนซ์ MySQL หรือไม่

Apache จะโฮสต์ไซต์สองแห่งและ SSL MySQL จะมีเพียงฐานข้อมูล Wordpress ไซต์เหล่านี้มีอัตราการเข้าชมต่ำน้อยกว่า 1k ต่อวัน

คำตอบ:


19

โปรดจำไว้ว่าผู้ปฏิบัติงาน apache แต่ละคนจะใช้เวลาประมาณ 20-25MB ดังนั้นหากผู้ใช้ 1k ครั้งจะเว้นระยะเวลาเท่ากันใน 8 ชั่วโมงต่อวันคุณสามารถคิดได้ว่าจะให้บริการเพียง 0.03 คำขอต่อวินาทีเท่านั้น

สมมติว่าคุณมีการรับส่งข้อมูลที่เข้มข้นในเวลาเพียง 1 ชั่วโมงต่อวัน (ไม่ใช่แน่นอน) คุณควรจะให้บริการประมาณ 0.28 คำขอต่อวินาที

ปัญหาอื่นคือจำนวนหน่วยความจำที่คุณได้รับจากฐานข้อมูลนั้นเป็นเรื่องง่ายที่จะรู้และเป็นค่าใช้จ่ายคงที่

ในกรณีที่เลวร้ายที่สุดคุณจะต้องถ่ายโอนฐานข้อมูลทั้งหมด (โอ้พระเจ้า! refactor คุณ SQL ในกรณีนี้! :)) .. .. ดังนั้นสองเท่าของจำนวนก่อนหน้า ..

คำตอบสั้น ๆ คือ (IMHO) 128MB จะพอเพียงมากมาย เซิร์ฟเวอร์ของคุณจะว่างและหน่วยความจำจะว่างเป็นเวลานานเนื่องจากการรับส่งข้อมูลที่คุณจินตนาการ

ฉันมี 20 โดเมนใน VPS ที่มี 256 MB ตั้งแต่ 3 ปีที่แล้วก็โอเค ... และความนิยมรวมอยู่ที่ประมาณ 1,500-2,000 ...

ตกลงความทรงจำในปัจจุบันราคาถูก แต่พวกคุณรู้หรือไม่ว่ากิกะไบต์หนึ่งกิกะไบต์มีเท่าไหร่?

PS: ฉันกำลังพูดถึงระบบ linux แน่นอนไม่เกี่ยวกับ OS ที่ใช้ 4GB สำหรับ gui เท่านั้น :)


13

สำหรับการใช้งานที่มีอัตราการใช้งานต่ำที่คุณกำลังอธิบายคุณควรใช้แผนขนาดเล็ก (256MB - 384MB) เมื่อ Apache และ MySQL ได้รับการติดตั้งการตั้งค่าเริ่มต้นจะถือว่าพวกเขากำลังทำงานกับ RAM ที่มีให้ซึ่งอาจทำให้เกิดปัญหาได้ ใช้สิ่งต่อไปนี้เป็นจุดเริ่มต้นที่ดีและปรับตามความจำเป็น:

ในไฟล์กำหนดค่า Apache 2 ของคุณ (โดยทั่วไปจะอยู่ที่ /etc/apache2/apache2.conf หรือ /etc/apache2/httpd.conf):

StartServers 1
MinSpareServers 3
MaxSpareServers 6
ServerLimit 24
MaxClients 24
MaxRequestsPerChild 3000

ในไฟล์กำหนดค่า MySQL ของคุณ (โดยทั่วไปจะอยู่ใน /etc/mysql/my.cnf):

key_buffer = 16K
max_allowed_packet = 1M
thread_stack = 64K
table_cache = 4
sort_buffer = 64K
net_buffer_length = 2K

นอกจากนี้หากคุณไม่ใช้ตาราง InnoDB คุณควรปิดใช้งานการสนับสนุน InnoDB โดยเพิ่มบรรทัดต่อไปนี้:

skip-innodb

apache2.confฉันมีหลายของเส้นเหล่านี้กล่าวถึงใน เปลี่ยนพวกเขาทั้งหมดหรือไม่ พวกเขาจะมีป้ายกำกับ: prefork MPM, worker MPM,event MPM
vSync

2

ฉันมีปัญหากับฉันที่ RAM 512MB จนกว่าฉันจะเปลี่ยนเป็น FastCGI นั่นทำให้ประสิทธิภาพดีขึ้นมาก ฉันมี 30MB ฟรี (ไม่นับแคชแน่นอน) จนถึงตอนนี้และลงเอยด้วยฟรีมากกว่า 100MB

ระยะของคุณอาจแตกต่างกันไปขึ้นอยู่กับปริมาณการใช้งานไซต์ของคุณ และเมื่อทราฟฟิกเริ่มขึ้นคุณสามารถเปลี่ยนเป็น nginx

ในการซื้อความสบายฉันได้เพิ่มเป็น 1GB

BTW ฉันเป็นเจ้าภาพที่prgmr.comและฉันยังไม่เคยเห็นใครสัมผัสราคาของพวกเขา


1
ขอบคุณสำหรับ prgmr.com ฉันรักสโลแกน "เราไม่คิดว่าคุณจะโง่" :-)
Kyle Brandt

ใช่ว่าพร้อมกับความจริงที่ว่าลุคให้ส่วนลดในสิ่งที่ต่ำสุดให้กับสมาชิก LOPSA คือเหตุผลที่ผมไปกับพวกเขา
แมตต์ซิมมอนส์

ฉันรู้ว่ามันเก่าเกินไป แต่ตอนนี้ฉันเดาว่า digitalocean เป็นที่ที่ผู้คนสามารถบอกได้ว่าไม่มีใครสามารถเอาชนะพวกเขาได้ :)
Ali

1

ฉันกำลังเรียกใช้การตั้งค่าที่คล้ายกันบน VPS ที่มี RAM 256 MB แต่ใช้ lighttpd แทน Apache ฉันลอง Apache ก่อน แต่มันมากเกินไปสำหรับ 256 MB VPS หากคุณต้องการใช้ Apache รหัสว่าคุณสามารถใช้ RAM 512 MB ได้

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


0

คุณควรใช้งานได้ดีกับ 1GB แต่ใช้งาน 2GB หากเป็นไปได้มันเป็นขั้นตอนการปฏิบัติงานที่สำคัญสำหรับระบบปฏิบัติการที่ทันสมัยที่สุด


1
1 GB จะเป็นขนาดใหญ่กว่าฆ่าสำหรับ 1k ครั้งต่อวัน
ceejayoz

คุณกำลังสมมติว่าเขาใช้ linux อยู่ถ้าเขาต้องการเรียกใช้ Windows 2008 64-bit ???
Chopper3

โปรดทราบว่านี่สำหรับเซิร์ฟเวอร์ที่ใช้ Apache, MySQL และ PHP สำหรับ Apache โดยเฉพาะฉันไม่ต้องการใช้เซิร์ฟเวอร์ Windows
thomasrutter

0

ฉันใช้ nginx + php-fastcgi แทน Apache แต่โหลดแอพพลิเคชั่นที่คล้ายกันมาก ฉันใช้ svn + ssh สำหรับการเข้าถึงการโค่นล้มดังนั้นจึงไม่มีกระบวนการ svnserve ทำงานยกเว้นเมื่อฉันเข้าถึงที่เก็บ ทั้งหมดนี้ทำงานบน Ubuntu 8 LTS

ตอนนี้ฉันทำงานที่ 174mB ที่ใช้ 256mB และเว็บไซต์ค่อนข้างตอบสนอง (เวลาตอบสนองโดยเฉลี่ย 500ms สำหรับมุมมอง Wordpress)

             total       used       free     shared    buffers     cached
Mem:           256        252          3          0         22         56
-/+ buffers/cache:        174         81
Swap:          511         12        499

ฉันขอแนะนำให้ดูที่เว็บเซิร์ฟเวอร์ส่วนหน้าที่มีน้ำหนักเบาเช่น nginx หรือ lighttpd แทนที่จะเป็น Apache + mod_php แม้แต่ Apache + mod_fastcgi ที่ใช้พร็อกซี php-fastc ก็จะใช้หน่วยความจำน้อยลง

หากคุณไปตามเส้นทาง Apache ทางเดินของฉันบอกว่า 512mB น่าจะเป็นเรื่องหลอกลวง หน่วยความจำ 1 หรือ 2gB ดูเหมือนว่ามีจำนวนมากเกินไปโดยเฉพาะอย่างยิ่งเมื่อพิจารณาว่าผู้ให้บริการ VPS ส่วนใหญ่ปรับต้นทุนได้อย่างไรเมื่อคุณได้รับการกำหนดค่าที่มากขึ้น


0

ฉันดิ้นรนกับสิ่งนี้มานานแล้ว

การตั้งค่าของ AlbertT ทำงานได้อย่างยอดเยี่ยม การตั้งค่า mysql สร้างความแตกต่างที่ชัดเจนและตอนนี้ไซต์ดูดีมาก http://laterboltz.com

ในไฟล์กำหนดค่า MySQL ของคุณ (โดยทั่วไปจะอยู่ใน /etc/mysql/my.cnf):

key_buffer = 16K max_allowed_packet = 1M thread_stack = 64K table_cache = 4 sort_buffer = 64K net_buffer_length = 2K

นอกจากนี้หากคุณไม่ใช้ตาราง InnoDB คุณควรปิดใช้งานการสนับสนุน InnoDB โดยเพิ่มบรรทัดต่อไปนี้:

ข้าม InnoDB

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