誰かがWeb開発に仮想マシンを使用していますか、そしてその理由は?[閉まっている]


10

仮想マシンをWeb開発に使用したい開発者が何人かいます。これを行う他の人はいますか?ある場合、なぜそれを行うのですか?仮想化されていない環境ではなく、VMで開発する場合の長所/短所はありますか?

VMでは処理が遅いと思います。


仮想化の他に、SqueakやPharo(squeakの派生物)などのイメージベースのシステムもあります。
ジェシーミリカン、2011

@ジェシーミリカン私はあなたが何を意味するのかわからない。SqueakとPharoはプログラミング言語ではありませんか?私はそれらが仮想マシンとどのように関連しているかを理解しようとしています。
7wp

回答:


20

IEのテストにはVMを使用しています。私は専用のWindowsマシンを持っていますが、いくつかの理由でVMを使用する傾向があります。

  • たとえ隣にいても、コンピュータを切り替えるのは面倒です
  • VMをロールバックしてクリーンなテスト環境にするのは非常に簡単です
  • IETesterのようなものではなく、ユーザーが実際に使用する環境を使用したいのですが、通常、IEの複数のバージョンを同時に実行することはできません。
  • 複数のテスト用コンピュータを購入するよりも、複数のVMインスタンスを実行する方が安価です。
  • 少なくともMac OS X用のVMは、過去数年で非常に優れた性能を発揮しており、VMに与えられる「遅い」不名誉は正当化されません。

2
VMは速度的には問題ありませんが、適切にサポートするための予備のメモリがある場合のみです。
Matthew Scharley、2010

@マシュー:ええ、でも最近のほとんどのコンピューターには4 GBの標準が搭載されており、Web開発者にとっては、少なくとも1つ(2つではない)のVMを同時に実行するのに十分です。

7

Web開発にVMを使用するもう1つの理由は、簡単にオフにできるサーバー環境を仮想化することです。

自宅では、個人のプロジェクトをセットアップするために常にVMを使用しているので、たとえばゲームをプレイしたいときに完全にオフにすることができます。作業環境では、ビデオをFLVにトランスコードするための完全なリソースを確保できるように、それをオフにすることができます。

それはあなたがあなたのリソースであなたが望むことをするためにあなたにその柔軟性を与えるだけです。


3

ほとんどすべての開発にVMを使用することを好みます。特に、開発者のチームと作業している場合はそうです。VMを使用すると、わずかな頭痛ですばやくセットアップできる「ボックス内の環境」を構築できます。私はMBPをプライマリマシンとして使用しているので、VMWareを好みます...特に「ほとんどWindows」の環境では、それほど苦痛はありません。

速度に関する限り、それはセットアップごとに正直に異なります。VMの速度に関して私が見た唯一の実際の問題は、a。)十分な物理リソース(メモリなど)がないか、b。)VMに十分なリソースを割り当てていないことを含みます。それ以外の場合、実際には、ネイティブボックスで作業するよりも、MacでWindows VMを使用することを好みます。


2

他の人が述べたように、テスト環境は大きなものです。

  • ブラウザのテスト(例:サファリなど)
  • クリーンなテスト環境
  • 複数の構成が簡単
  • アクセシビリティテスト(スクリーンリーダーなど)

私は、kcachegrindが既にセットアップされているコードのプロファイリングとデバッグ専用のVMと、セレン、xdebug、およびコードのプロファイルとデバッグを簡単に行うように構成された他のいくつかのツールを持っています。はい、これはすでに開発環境と同じだと言う人もいるかもしれませんが、個人的には、この種のタスク専用のデスクトップにVMを置くのが好きです。

また、VMの速度について:

環境を「仮想化」するために必要なオーバーヘッドがあるため、VMでは物事が遅くなります。ただし、VMはハイパーバイザにますます近づき、VMに必要なオーバーヘッドが少なくなります。


2

私はいつも仮想マシンを使っています。テストの目的では、理由は明白ですが、主に1)新しいハードウェアへの移行が非常に簡単になり、2)簡単な「スナップショット」(または一連のスナップショット)私の開発環境の構成では、必要に応じてフォールバックします。私のニーズは固有かもしれません-私は主にDelphiの複数のバージョンと多くのサードパーティコンポーネントを使用しているDelphi開発者です-しかし、仮想マシン内の開発環境で時間と頭痛の時間を節約できたので、おそらくできませんでした誇張してください。

とはいえ、特にメモリに関しては、実行するボックスをエビしないでください。; )


1

これは遅い答えです。受け入れられた回答のすべての点に同意しますが、テストのためだけでなく、Web開発のためだけにVMを使用することを付け加えたいと思います。私はVirtualBoxを使用してWindows、Fedora、Ubuntuを実行するiMacを使用しています。性能に問題はありません。

私はFedoraとUbuntuの両方のサーバーを実行している顧客のために働いており、開発環境と本番環境を厳密に一致させることができるので、この方法で作業することを好みます。また、開発の観点から最も重要な領域のシステム管理者も改善されます。


1

VMの使用は、クライアント固有の開発設定を維持するための良い方法であることがわかりました。

過去のコンサルタント会社のDevsは、特定のVMを起動すると、そのクライアント用にサポートされているソフトウェアを開発/テストおよび展開するための作業環境ができることを知っていました。実際のオッドボールシステムをサポートする場合に特に役立ちます。

新しいアプリの場合、メインのDevマシンで最新かつ最高のセットアップを行うことになります。しかし、会社がまだサポートしている古いVB6アプリをバグ修正する必要がある場合はどうでしょうか。きれいなVS2010マシンにVisual Studio 6をインストールしてみませんか?私はそうは思わない!

また、どのDevもあらゆるクライアントをサポートするのは非常に簡単でした。


0

私は確かにWebサイトのテストに仮想マシンを使用しましたが、コードの記述には使用していません。

仮想マシンの利点は、IE6 / 7/8で発見される避けられないcssバグをテストするために、さまざまなOSとブラウザーをセットアップできることです。


0

仮想マシンでWebサイトを開発する理由はわかりません。Windowsユーザーには必要ありません。

Windowsインストール(ポータブルIE、Chrome、Firefox、Safariなど)ですべてを実行
できます。あるいは、Expression SuperPreviewを使用して、クロスブラウザーテストの新しい世界に入ることができます。


Portable IE、Expression SuperPreview、IETester などは、あらゆる目的で仮想化された環境です。古いバージョンのIEの実際のコピーを実際に実行しているわけではなく、SuperPreviewやIETesterなどの場合、ブラウザーのクロムやプラグインアーキテクチャにアクセスすることすらできません。IE以外では、同じブラウザーの他のOSバージョンにはアクセスできません。たとえば、Mac OS X上のSafariには、Safari for Windowsにはない機能があり、Chrome for Macは通常、Chrome for Windowsよりも遅れています。

ダメダメダメ!ポータブルIE、Expression SuperPreview、IETesterはシステムでネイティブに実行され、仮想化は関与していません。現在の環境で実行するように調整された実際のコピーを実行していますが、動作は同じです... Web開発時にブラウザのクロムまたはプラグインアーキテクチャにアクセスする必要はありません。Safariの場合、追加の機能はクロスブラウザーWeb開発には関係ありません。Chromeの場合、バージョンを同時に使用できます...各OSバージョンで各ブラウザバージョンを実際にテストする必要がある場合、その目的のためにbrowsershots.orgがあります
Tamara Wijsman

Officeの複数のバージョンとの統合をテストしてみてください。VMは今でも驚くほど便利です。
davewasthere

@davewasthere:OfficeとWeb開発はどのように関連していますか?VMにはさまざまな用途があると思いますが、Web開発の場合はそれがなくても問題ありません。OfficeとVisual Studioの複数のバージョンをVMなしで一緒にインストールすることもできますが、実際には制限とトレードオフがあります。本当にVMが必要です。
Tamara Wijsman、2009

@TomWij-Wordと統合するASP.Netのイントラネットアプリケーションを備えたクライアントが1つあります。彼らは複数のバージョンのOfficeを使用しているため、各バージョンがインストールされたイメージを持つことができるのは素晴らしいことです。OfficeとIEを並べて使用することは可能です。しかし、実際には私はそれが痛みを感じる。VMはもっと
すっきりした

0

仮想マシンを使用して、virtualbox.me(私はドメインを所有しています)のサブドメインを、ゲストに共有されているホストマシン上のフォルダーのサブディレクトリにマップします。

このセットアップでは、新しいディレクトリを作成し、すぐにその独自のサブドメインの下に新しいプロジェクトを作成します。つまり、/ home / pete / virtualwww / my-super-projectはhttp://my-super-project.virtualbox.me/にマップします

これを複製するためのガイドを書きました(mod_vhost_aliasとVirtualDocumentRootを使用します)。

http://otaqui.com/blog/1652/setting-up-a-virtualbox-virtual-machine-for-web-development-with-multiple-sites-using-mod_vhost_alias-and-virtualdocumentroot/

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.