2009-06-04 22 views

risposta

3

Penso che troverete la maggior parte delle persone sosterrà Redhat su Windows per l'affidabilità. Glassfish stesso dovrebbe funzionare lo stesso su entrambi.

Probabilmente si dovrebbe chiedere questo su Server Fault

16

Se si seleziona la sorgente di pesci vetro, in particolare ./appserv-commons/src/java/com/sun/enterprise/util/io/FileUtils.java, ti guarda tutte le contorsioni che Glassfish attraversa per eliminare/rinominare file e directory su Windows.

Questo è un problema di Windows, con le sue limitazioni sull'eliminazione e sulla ridenominazione di file aperti.

Ci sono tutti i tipi di trucchi, inclusa la richiesta di un GC dalla JVM più volte nella speranza di chiudere il flusso di file, la ridenominazione "pseudo", i loop di sospensione.

Alcuni esempi:

/** 
*Attempts to delete files that could not be deleted earlier and were not overwritten. 
*<p> 
*On Windows, the method requests garbage collection which may unlock locked 
*files. (The JarFile finalizer closes the file.) 

/* 
    *On Windows, as long as not all leftover files have been cleaned and we have not 
    *run the max. number of retries, try again to trigger gc and delete 
    *each remaining leftover file. 
    */ 

/** 
* Windows has BIG issues renaming a directory that is open somnewhere -- e.g. if 
* a DOS box is opened anywhere in that directory. 
* This method will try to do a "virtual renaming" if there are problems 
* I.e. it attempts to do a simple rename, if that fails it will copy everything under 
* the original directory to the renamed directory. Then it will delete everything 
* under the original directory that the OS will allow it to. 

In pratica questo a volte si traduce in borked implementazioni o riassegnazioni su Windows, come alcuni file non possono essere cancellati o spostati e finiscono per essere lasciato alle spalle. Delle 50 istanze di Glassfish che eseguo, non ho mai avuto problemi con Solaris 10 e ho sempre problemi relativi a ciò su Windows.

In breve, qualsiasi * NIX sarà migliore solo per questo motivo, altre considerazioni sull'amministrazione della piattaforma a parte.

Problemi correlati