Saya melihat beberapa pengembang yang suka menggunakan mesin virtual untuk pengembangan web. Apakah ada orang lain yang melakukan ini? Jika ada, mengapa Anda melakukannya? Apakah ada pro / kontra untuk dikembangkan pada VM daripada di lingkungan yang tidak tervirtualisasi?
Saya akan berpikir hal-hal lebih lambat di VM.
Jawaban:
Saya menggunakan VM untuk pengujian IE. Saya memang memiliki mesin Windows khusus, tetapi saya cenderung menggunakan VM karena beberapa alasan:
sumber
Alasan lain orang menggunakan VM untuk pengembangan web adalah untuk memvirtualisasi lingkungan server yang dapat mereka matikan dengan sangat mudah.
Di rumah saya selalu menggunakan VM untuk mengatur proyek pribadi sehingga saya bisa mematikan semuanya sepenuhnya ketika saya ingin, katakanlah, bermain game. Di lingkungan kerja Anda mungkin ingin mematikannya sehingga Anda memiliki sumber daya penuh untuk mentranskode video ke FLV.
Itu hanya memberi Anda fleksibilitas untuk melakukan apa yang Anda inginkan dengan sumber daya Anda.
sumber
Saya lebih suka menggunakan VM untuk hampir semua pengembangan ... terutama ketika saya bekerja dengan tim pengembang. VM memungkinkan saya untuk membangun "lingkungan di dalam kotak" yang dapat dengan cepat diatur dengan sedikit sakit kepala. Karena saya menggunakan MBP sebagai mesin utama saya, saya lebih suka VMWare ... itu jauh lebih tidak menyakitkan terutama di lingkungan "kebanyakan-Windows".
Sejauh menyangkut kecepatan, jujur bervariasi dari pengaturan ke pengaturan. Satu-satunya masalah nyata yang saya lihat dengan kecepatan VM melibatkan a.) Tidak memiliki sumber daya fisik yang cukup (memori, dll.) Atau b.) Tidak mengalokasikan sumber daya yang cukup untuk VM Anda. Kalau tidak, saya sebenarnya lebih suka bekerja di VM Windows di Mac saya daripada bekerja di kotak asli.
sumber
Lingkungan pengujian adalah yang besar seperti yang lain telah disebutkan.
Saya memiliki VM khusus untuk profil dan debugging kode saya yang sudah disiapkan oleh kcachegrind, bersama dengan selenium, xdebug dan beberapa alat lain yang dikonfigurasi untuk memudahkan profil dan debug kode saya. Ya beberapa mungkin mengatakan ini adalah apa lingkungan pengembangan sudah akan tetapi secara pribadi saya suka memiliki VM di desktop saya yang didedikasikan untuk tugas semacam ini.
Juga, tentang kelambatan dalam VM:
Hal-hal yang lebih lambat dalam VM karena overhead membutuhkan "virtualisasi" lingkungan. Namun, VM menjadi semakin dekat dengan hypervisor yang mengurangi biaya overhead yang diperlukan untuk VM.
sumber
Saya menggunakan mesin virtual sepanjang waktu. Untuk tujuan pengujian, penalaran yang jelas, tapi saya juga menggunakannya untuk lingkungan pengembangan yang sebenarnya saya, terutama karena 1) itu membuat migrasi ke perangkat keras baru no-brainer, dan 2) itu memberi saya mudah "snapshot" (atau set dari snapshot) kembali ke yang diperlukan untuk konfigurasi lingkungan pengembangan saya. Kebutuhan saya mungkin unik - Saya terutama pengembang Delphi menggunakan beberapa versi Delphi, dan banyak komponen pihak ketiga - tetapi jumlah waktu dan sakit kepala yang memiliki lingkungan pengembangan saya di dalam mesin virtual telah disimpan, mungkin tidak bisa dilebih-lebihkan.
Yang mengatakan, jangan berhemat pada kotak Anda menjalankannya, terutama ketika datang ke memori. ; )
sumber
Ini jawaban yang terlambat. Saya setuju dengan semua poin dalam jawaban yang diterima, tetapi saya ingin menambahkan bahwa saya menggunakan VM secara eksklusif untuk pengembangan Web, dan tidak hanya untuk pengujian. Saya menggunakan iMac menggunakan VirtualBox untuk menjalankan Windows, Fedora, dan Ubuntu - terkadang sekaligus. Saya tidak memiliki masalah dengan kinerja.
Saya lebih suka bekerja dengan cara ini karena saya bekerja untuk pelanggan yang menjalankan server Fedora dan Ubuntu dan memungkinkan saya untuk mencocokkan lingkungan pengembangan dengan lingkungan produksi. Itu juga membuat saya administrator sistem yang lebih baik di bidang yang paling penting dari sudut pandang pengembangan.
sumber
Telah ditemukan menggunakan VMs cara yang baik untuk menjaga pengaturan pengembangan khusus klien.
Di sebuah perusahaan konsultan sebelumnya, Devs tahu bahwa menjalankan VM spesifik berarti Anda memiliki lingkungan kerja untuk mengembangkan / menguji dan menggunakan perangkat lunak yang kami dukung untuk klien itu. Sangat berguna ketika mendukung beberapa sistem eksentrik nyata.
Untuk aplikasi baru, Anda akan memiliki pengaturan terbaru dan terhebat di mesin Dev utama Anda. Tetapi bagaimana ketika Anda perlu memperbaiki beberapa aplikasi VB6 lama yang masih didukung oleh perusahaan Anda. Ingin menginstal Visual Studio 6 pada mesin VS2010 bersih Anda yang cantik? Saya rasa tidak!
Juga berarti sangat mudah bagi Dev mana pun untuk mendukung klien apa pun.
sumber
Saya tentu saja menggunakan mesin virtual untuk menguji situs web, tetapi tidak untuk menulis kode.
Manfaat mesin virtual adalah Anda dapat mengatur OS dan browser yang berbeda, untuk menguji bug css yang tak terhindarkan yang akan Anda temukan di IE6 / 7/8.
sumber
Saya tidak melihat alasan untuk mengembangkan situs web di mesin virtual, tidak ada kebutuhan untuk itu untuk pengguna Windows.
Anda dapat menjalankan semuanya dalam instalasi Windows (Portable IEs, Chrome, Firefox, Safari, ...),
atau Anda dapat menggunakan Expression SuperPreview untuk memasuki dunia baru pengujian lintas-browser.
sumber
Saya menggunakan mesin virtual untuk memetakan subdomain dari virtualbox.me (saya memiliki domain) ke subdirektori folder pada mesin host saya yang dibagikan kepada tamu.
Dengan pengaturan ini, saya hanya membuat direktori baru dan segera memiliki proyek baru di bawah subdomain itu sendiri, yaitu / home / pete / virtualwww / my-super-project maps ke http://my-super-project.virtualbox.me/
Saya telah menulis panduan untuk mereplikasi ini (menggunakan mod_vhost_alias dan VirtualDocumentRoot) di sini:
http://otaqui.com/blog/1652/setting-up-a-virtualbox-virtual-machine-for-web-development-with-multiple-sites-using-mod_vhost_alias-and-virtualdocumentroot/
sumber