2009-06-04 4 views
10

Redhat 또는 Windows 2003 Server를 선택하는 것이 중요합니다 (신뢰성이있는 경우). 둘 다 동등한 기술을 사용한다고 가정합니다. 감사합니다.Windows 용 GlassFish와 RedHat

답변

3

저는 대부분의 사람들이 신뢰성 높은 Windows 기반의 Redhat을 사용하고 있다고 생각합니다. 글래스 피쉬 자체도 마찬가지입니다. 특별히, ./appserv-commons/src/java/com/sun/enterprise/util/io/FileUtils.java를 글래스 피쉬 소스를 선택하면

당신은 아마 당신이거야, Server Fault

16

에 요청해야합니다 Windows에서 파일 및 디렉토리의 삭제/이름 바꾸기를 위해 Glassfish가 수행하는 모든 충돌을보십시오.

이것은 열린 파일을 삭제하고 이름을 바꾸는 데 제한이있는 Windows 문제입니다.

파일 스트림 닫기, "가상"이름 바꾸기, sleep-try 루프를 위해 JVM에서 GC를 여러 번 요청하는 등 모든 종류의 트릭이 있습니다.

몇 가지 예 : 실제로

/** 
*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. 

이 때때로 일부 파일을 삭제하거나 이동할 수 없습니다로, 윈도우에 배포 또는 재배치를 borked하고 남아되고 결국 변환합니다. 50 개 정도의 Glassfish 인스턴스 중 Solaris 10에서 문제가 발생하지 않았으며 항상 Windows에서 이와 관련된 문제가 있습니다.

간단히 말해서 * NIX는 이러한 이유 때문에 더 좋을 것입니다. 다른 플랫폼 관리 고려 사항은 제쳐두고 있습니다.