Ich entwickle ein verteiltes Dateisystem mit Java, ich kann nicht viele Details in diesem Moment geben. Ich muss einige Sachen auf Linux prüfen, ich benutze WMWare Server und installiere Linux innerhalb einer virtuellen Maschine. Gibt es einen Unterschied zwischen der simulierten Netzwerkkarte und einer echten Ethernet-Schnittstelle?VMWare - Netzwerk-Anwendungen
Antwort
ich ein verteiltes Dateisystem entwickle ... Ich werde WMWare Server verwenden, um eine Linux in einer virtuellen Maschine installieren.
VMware ist ideal für diese Art von Sache. Es sollte keinen Unterschied geben, außer, wie RichieHindle sagte, in der Leistung, besonders wenn Sie vorhaben, mehrere vms auf demselben Server auszuführen.
Verwenden Sie echte Hardware, wenn Sie brauchbare Benchmark-Ergebnisse erzielen möchten.
Java ist eine eigene "VM" ... zusätzlich zu einer Virtualisierungsschicht im Gastbetriebssystem ... zusätzlich zu VMware ... auf einer virtuellen Ausführungsmodell-CPU. Nehmen Sie eine kleine Virtualisierung hier, fügen Sie eine kleine Virtualisierung hinzu und schon bald sprechen wir über echte Abstraktion!
Aus der Sicht der Anwendung Code, nein, es gibt keinen Unterschied.
Der einzige sichtbare Unterschied könnte in der Leistung sein - die Reaktionsgeschwindigkeit und die genauen Zeitpunkte der Dinge könnten unterschiedlich sein, aber Sie sprechen Mikrosekunden.
Es gibt so viel universelle Software, die einwandfrei funktioniert unter VMs, die die Antwort auf fast jede Frage der Form "Sind VMs anders als echte Maschinen?" auf Anwendungsebene ist "Nein".
(Dinge könnten anders sein, wenn Sie über Kernel-Level-Treiber-Software sprechen.)
@julianchira: richie hat einen Punkt bei der Erwähnung von "Point of View Application Code", so fair ist die Frage hier, aber auch auf Posting auf Serverfault.com zu denken –