ฉันเห็นนักพัฒนาไม่กี่คนที่ชอบใช้เครื่องเสมือนเพื่อการพัฒนาเว็บ มีคนอื่นที่ทำสิ่งนี้หรือไม่? ถ้ามีทำไมคุณถึงทำอย่างนั้น? มีข้อดี / ข้อเสียในการพัฒนาบน VM ไม่ใช่ในสภาพแวดล้อมเสมือนจริงหรือไม่?
ฉันคิดว่า VM ช้ากว่านี้
ฉันเห็นนักพัฒนาไม่กี่คนที่ชอบใช้เครื่องเสมือนเพื่อการพัฒนาเว็บ มีคนอื่นที่ทำสิ่งนี้หรือไม่? ถ้ามีทำไมคุณถึงทำอย่างนั้น? มีข้อดี / ข้อเสียในการพัฒนาบน VM ไม่ใช่ในสภาพแวดล้อมเสมือนจริงหรือไม่?
ฉันคิดว่า VM ช้ากว่านี้
คำตอบ:
ฉันใช้ VMs สำหรับการทดสอบ IE ฉันมีเครื่อง Windows เฉพาะ แต่ฉันพึ่งพาการใช้ VM ด้วยเหตุผลบางประการ:
อีกเหตุผลหนึ่งที่ผู้คนใช้ VM สำหรับการพัฒนาเว็บคือการทำเวอร์ชวลเซิร์ฟเวอร์เสมือนที่พวกเขาสามารถปิดได้อย่างง่ายดาย
ที่บ้านฉันมักจะใช้ VM ในการตั้งค่าโปรเจ็กต์ส่วนตัวเพื่อที่ฉันจะสามารถปิดมันได้อย่างสมบูรณ์เมื่อฉันต้องการพูดเล่นเกม ในสภาพแวดล้อมการทำงานคุณอาจต้องการปิดเพื่อให้คุณมีทรัพยากรเต็มรูปแบบในการแปลงวิดีโอเป็น FLV
เพียงให้ความยืดหยุ่นในการทำสิ่งที่คุณต้องการด้วยทรัพยากรของคุณ
ฉันชอบที่จะใช้ VMs สำหรับการพัฒนาทั้งหมด ... โดยเฉพาะอย่างยิ่งเมื่อฉันทำงานกับทีมนักพัฒนา VMs ช่วยให้ฉันสร้าง "สภาพแวดล้อมในกล่อง" ที่สามารถติดตั้งได้อย่างรวดเร็วด้วยอาการปวดหัวเล็กน้อย เนื่องจากฉันใช้ MBP เป็นเครื่องหลักของฉันฉันชอบ VMWare ... มันเจ็บปวดน้อยลงโดยเฉพาะในสภาพแวดล้อม "ส่วนใหญ่ - Windows"
เท่าที่เกี่ยวข้องกับความเร็วมันแตกต่างจากการตั้งค่าการติดตั้งโดยสุจริต ปัญหาจริงเท่านั้นที่ฉันเห็นด้วยความเร็ว VM เกี่ยวข้องกับ.) มีทรัพยากรทางกายภาพไม่เพียงพอ (หน่วยความจำ ฯลฯ ) หรือ b.) ไม่จัดสรรทรัพยากรให้กับ VM ของคุณเพียงพอ มิฉะนั้นฉันชอบทำงานใน Windows VM บน Mac ของฉันมากกว่าทำงานบนกล่องพื้นเมือง
สภาพแวดล้อมการทดสอบนั้นใหญ่มากอย่างที่คนอื่น ๆ พูดถึง
ฉันมี VM อย่างเคร่งครัดสำหรับการทำโปรไฟล์และการดีบักรหัสของฉันซึ่งมี kcachegrind ตั้งค่าไว้แล้วพร้อมกับซีลีเนียม xdebug และเครื่องมืออื่น ๆ ที่ได้รับการกำหนดค่าให้โปรไฟล์และดีบักรหัสของฉันได้อย่างง่ายดาย ใช่บางคนอาจพูดว่านี่เป็นสิ่งที่สภาพแวดล้อมการพัฒนาจะเป็นอยู่แล้ว แต่โดยส่วนตัวฉันชอบที่จะมี VM บนเดสก์ท็อปของฉันโดยเฉพาะกับงานประเภทนี้
นอกจากนี้เกี่ยวกับความช้าใน VM:
สิ่งต่าง ๆ จะช้าลงใน VM เนื่องจากโอเวอร์เฮดจำเป็นต้อง "virtualize" สภาพแวดล้อม อย่างไรก็ตาม VM ใกล้เข้ามาใกล้กับไฮเปอร์ไวเซอร์ซึ่งจะช่วยลดค่าใช้จ่ายที่จำเป็นสำหรับ VM
ฉันใช้เครื่องเสมือนตลอดเวลา สำหรับวัตถุประสงค์ในการทดสอบเหตุผลก็ชัดเจน แต่ฉันก็ใช้มันสำหรับสภาพแวดล้อมการพัฒนาที่แท้จริงของฉันส่วนใหญ่เป็นเพราะ 1) มันทำให้การโยกย้ายไปยังฮาร์ดแวร์ใหม่ไม่ใช่เรื่องง่ายและ 2) มันทำให้ฉัน "ง่าย" (หรือชุดของ ภาพรวม) ย้อนกลับไปใช้ตามความจำเป็นสำหรับการกำหนดค่าของสภาพแวดล้อมการพัฒนาของฉัน ความต้องการของฉันอาจไม่เหมือนกัน - ฉันเป็นนักพัฒนา Delphi โดยใช้หลายเวอร์ชันของ Delphi และส่วนประกอบของบุคคลที่สามจำนวนมาก - แต่ระยะเวลาและอาการปวดหัวที่มีสภาพแวดล้อมการพัฒนาของฉันภายในเครื่องเสมือนได้บันทึกไว้ คุยโว
ที่กล่าวว่าไม่เหนียวแน่นในกล่องที่คุณเรียกใช้โดยเฉพาะอย่างยิ่งเมื่อมันมาถึงหน่วยความจำ ; )
นี่คือคำตอบที่ล่าช้า ฉันเห็นด้วยกับประเด็นทั้งหมดในคำตอบที่ได้รับการยอมรับ แต่ฉันต้องการเพิ่มว่าฉันใช้ VMs เฉพาะสำหรับการพัฒนาเว็บไม่ใช่เพื่อการทดสอบเท่านั้น ฉันใช้ iMac โดยใช้ VirtualBox เพื่อเรียกใช้ Windows, Fedora และ Ubuntu - บางครั้งก็พร้อมกัน ฉันไม่มีปัญหากับประสิทธิภาพ
ฉันชอบทำงานด้วยวิธีนี้มากกว่าเพราะฉันทำงานให้กับลูกค้าที่ใช้งานเซิร์ฟเวอร์ทั้ง Fedora และ Ubuntu และช่วยให้ฉันสามารถจับคู่สภาพแวดล้อมการพัฒนากับสภาพแวดล้อมการผลิตได้อย่างใกล้ชิด มันทำให้ฉันเป็นผู้ดูแลระบบที่ดีขึ้นในด้านที่สำคัญที่สุดจากมุมมองการพัฒนา
พบว่าใช้ VMs เป็นวิธีที่ดีในการรักษาการตั้งค่าการพัฒนาเฉพาะลูกค้า
ใน บริษัท ที่ปรึกษาที่ผ่านมา Devs รู้ว่าการยิง VM เฉพาะหมายความว่าคุณมีสภาพแวดล้อมการทำงานสำหรับการพัฒนา / ทดสอบและการปรับใช้ซอฟต์แวร์ที่เราสนับสนุนสำหรับลูกค้ารายนั้น มีประโยชน์อย่างยิ่งเมื่อสนับสนุนระบบคี่บอลจริงบางอย่าง
สำหรับแอพใหม่คุณจะต้องมีการติดตั้งล่าสุดและยิ่งใหญ่ที่สุดในเครื่อง Dev หลักของคุณ แต่สิ่งที่เกี่ยวกับเมื่อคุณต้องการแก้ไขข้อผิดพลาดบางแอป VB6 เก่าที่ บริษัท ของคุณยังคงสนับสนุน อยากติดตั้ง Visual Studio 6 บนเครื่อง VS2010 ที่สะอาดและน่ารักของคุณหรือไม่ ฉันไม่คิดอย่างนั้น!
มันหมายความว่ามันง่ายสำหรับ Dev ที่จะให้การสนับสนุนลูกค้า
แน่นอนฉันใช้เครื่องเสมือนสำหรับการทดสอบเว็บไซต์ แต่ไม่ใช่สำหรับการเขียนโค้ด
ประโยชน์ของเครื่องเสมือนคือคุณสามารถตั้งค่าระบบปฏิบัติการและเบราว์เซอร์ที่แตกต่างกันเพื่อทดสอบข้อผิดพลาด css ที่หลีกเลี่ยงไม่ได้ที่คุณจะค้นพบใน IE6 / 7/8
ฉันไม่เห็นเหตุผลในการพัฒนาเว็บไซต์ในเครื่องเสมือนไม่จำเป็นสำหรับผู้ใช้ Windows
คุณสามารถเรียกใช้ทุกอย่างในการติดตั้ง Windows (Portable IEs, Chrome, Firefox, Safari, ... )
หรือคุณสามารถใช้Expression SuperPreviewเพื่อเข้าสู่โลกใหม่ของการทดสอบข้ามเบราว์เซอร์
ฉันใช้เครื่องเสมือนเพื่อจับคู่โดเมนย่อยของ virtualbox.me (ฉันเป็นเจ้าของโดเมน) กับไดเรกทอรีย่อยของโฟลเดอร์บนเครื่องโฮสต์ที่แชร์กับแขก
ด้วยการตั้งค่านี้ฉันเพิ่งสร้างไดเรกทอรีใหม่และมีโครงการใหม่ภายใต้โดเมนย่อยของตนเองเช่น / home / pete / virtualwww / แผนที่ของฉันสุดยอดโครงการไปที่http://my-super-project.virtualbox.me/
ฉันได้เขียนคู่มือสำหรับการจำลองแบบนี้ (ใช้ mod_vhost_alias และ VirtualDocumentRoot) ที่นี่: