ปัจจุบัน ฉันมีไซต์และแอปพลิเคชันประมาณ 20 แห่งที่โฮสต์ใน AWS EC2 บางตัวมี EC2 เป็นของตัวเอง ในขณะที่ตัวอื่นใช้ EC2 ร่วมกับโฮสต์เสมือนหลายตัวบน EC2 นั้น
แต่ละไซต์แยกจากกันโดยสิ้นเชิงและไม่เกี่ยวข้องกัน เซิร์ฟเวอร์ที่ใช้ EC2 ร่วมกันโดยทั่วไปจะมีขนาดเล็กกว่ามากโดยมีความต้องการทราฟฟิก/ทรัพยากรเพียงเล็กน้อย (ด้วยเหตุนี้จึงเป็นเซิร์ฟเวอร์ที่ใช้ร่วมกัน)
ฉันยังมีเซิร์ฟเวอร์ EC2 หนึ่งเครื่องที่ใช้ง่ายๆ เพื่อรันงานเป็นชุดและงานตามกำหนดเวลาควบคู่ไปกับไซต์เวอร์ชันที่ใช้งานจริง เพื่อให้แน่ใจว่าไซต์ที่ใช้งานจริงยังคงสามารถเข้าถึงได้แม้ว่างานที่จัดกำหนดการไว้จะหนักหน่วงก็ตาม
ฉันกำลังมองหาการใช้ Docker ในสภาพแวดล้อม dev > prod ทั้งหมดของฉันเพื่อการใช้ทรัพยากรเซิร์ฟเวอร์ที่ดีขึ้น และการโยกย้ายระหว่างสภาพแวดล้อมที่ง่ายขึ้น ฯลฯ
เราอยากทราบความคิดเห็นของคุณเกี่ยวกับแนวทางปฏิบัติที่ดีที่สุดสำหรับฮาร์ดแวร์เซิร์ฟเวอร์ที่ใช้งานจริง
เป็นการดีที่สุดที่จะใช้ EC2 ที่ใหญ่กว่าหนึ่งอันและให้ทุกไซต์เป็นคอนเทนเนอร์นักเทียบท่าของตัวเอง ดูเหมือนว่าจะมีผู้ดูแลเซิร์ฟเวอร์น้อยลง การตั้งค่าโดยรวมเป็นระเบียบเรียบร้อยขึ้น และจากสิ่งที่ฉันเข้าใจ แต่ละคอนเทนเนอร์นักเทียบท่ายังคงรักษาตัวเองจากมุมมองด้านความปลอดภัย แต่ปัญหาเกี่ยวกับเซิร์ฟเวอร์หรือทรัพยากรที่เพิ่มขึ้นอย่างรวดเร็วจะส่งผลกระทบต่อทุกไซต์ (ลดภาระโดยตัวจัดสรรภาระงาน)
หรือฉันควรแยกมันออกเป็นหลายๆ EC2 เช่น บน EC2 ต่อคอนเทนเนอร์นักเทียบท่า ดูเหมือนว่าจะตรงข้ามกับนักเทียบท่าโดยสิ้นเชิง แต่ไม่แน่ใจว่าฉันขาดอะไรไปหรือไม่
การใช้ EC2 เดียวสำหรับทุกไซต์ทำให้ง่ายขึ้น (มีผู้ดูแลระบบน้อยลง) ในการตั้งค่าโหลดบาลานเซอร์และ/หรือใช้งานเซิร์ฟเวอร์มากเกินไป
บันทึก; ถ้ามันสร้างความแตกต่างได้ ฉันใช้ RDS สำหรับ MySQL; ไม่มี MySQl ที่ทำงานบน EC2 ใด ๆ โดยตรง
ขอบคุณล่วงหน้า