2010-04-29 2 views
7

저는 개발과 생산을 위해 Tomcat 6.0.20을 사용할 프로젝트를 진행하고 있습니다.Tomcat 6 | antiResourceLocking 및 antiJARLocking의 중요성은 무엇입니까?

server.xml에서 Context.antiResourceLocking을 false로 설정해야하는 고온 배포와 관련된 몇 가지 문제가 나타났습니다. antiResourceLocking 및 antiJARLocking에 대한 몇 가지 질문이있었습니다. 나는 참조 번호 http://tomcat.apache.org/tomcat-6.0-doc/config/context.html을 보았습니다.

내가 이해할 수없는 것은 정확히 JAR이 잠겨 있거나 리소스가 잠겨 있다는 의미입니다. 지금까지 읽은 내용은 파일/jar를 잠근 프로세스로 인해 실패한 응용 프로그램을 배포 취소 할 때 잠금 문제가 발생한다는 것입니다. 누군가이 문제에 관해 더 많은 것을 읽을 수있는 곳으로 나를 가리켜 주시겠습니까?

내 질문은 : 1) antiJARLocking 및/또는 antiResourceLocking을 false로 설정하면 어떤 문제가 발생합니까? 어떤 사람이 예제를 제공해 줄 수 있습니까? 2) 프로덕션 환경에서 이러한 특성을 false로 설정하는 것은 나쁜 습관입니까? 2) 윈도우 박스에서 일어날 수있는만큼 빈번하게 리눅스 박스에서 락킹이 발생하지 않는 것은 사실입니까?

감사합니다.

감사합니다.

고 빈드은 N. 여기

답변

5

다음에 내 대답은 다음과 같습니다

내가 막연히 기억하지만 나는 (Windows에서만 문제가 발생할 수 false로 antiJARLocking 및/또는 antiResourceLocking을 설정, 무엇을 말할 수에서

1) Tomcat 개발자는 Linux에도 영향을 미쳤다는 것을 주장한다. 나는 그것을 무시하고있다.

2) Tomcat이 Windows에서 실행될 때 false로 설정하는 것은 나쁜 습관입니다.

초 2) !! 필자는 Tomcat을 여러 Linux 배포판과 버전에서 10 년 이상 운영 해왔다. 나는 그 속성 중 하나를 true로 설정하지 않아서 jar 잠금 또는 자원 잠금 문제를 한번도 본 적이 없습니다. 내가 아는 한 그것은 발생하지 않지만 사용중인 파일 시스템 구현에 따라 달라질 수 있으며 항상 EXT2, EXT3 또는 EXT4 중 하나를 사용했습니다.

여전히 궁금한 사항이 있으면 Tomcat 사용자 메일 링리스트에서 질문하십시오.

건배!

제이슨 브리가 공동 저자, 톰캣

: 나는 자동으로 구축하고 웹 애플리케이션을 배포하는 SVN 주위에 시스템을 구축했다

4

1) 확실한 가이드 (라일리), 배포가 톰캣 개미를 통해 만들어졌다 antJARLocking 및/또는 antiResourceLocking을 false로 설정하면 tomcat이 일부 jar 및 log4j.properties 구성 파일을 삭제할 수 없어 배포가 실패했기 때문에 응용 프로그램이 제대로 배포 취소되지 않았습니다. 그래서 나는이 속성들을 true로 설정해야했고, tomcat은 temp 디렉토리에서 webapp의 복사본을 만들었습니다. 이로 인해 배포가 느려지고 거의 각 임시 배포가 크기가 커짐에 따라 임시 디렉토리에서 내 응용 프로그램의 이전 배포를 삭제하는 절차를 만들어야했습니다. Tomcat이 임시 디렉토리에 앱을 재배포하기 때문에 언제든지 임시 디렉토리에서 배치를 삭제하는 것이 안전합니다.

2) Tomcat 문서에서 jar 잠금 또는 리소스 잠금과 관련된 문제는 Windows에서만 발생 함을 이해했습니다. 프로덕션 환경에서는 이러한 속성을 true로 설정하지 않습니다. 너무 자주 다시 배포 할 필요가 없기 때문에 Java를 사용하면 프로덕션에서 재배포 한 후 서버 재시작을 수행하는 것이 좋습니다. OutOfMemoryError는 항상 어둠 속에서 숨어 있습니다. 자신의 코드가 누출되지 않아도). 또 다른 사소한 문제는 응용 프로그램이 임시 디렉토리에 배포된다는 것입니다. webapps 디렉토리에서 jsp 또는 다른 파일을 수정하는 경우 변경 사항을 임시 디렉토리에도 복사하지 않으면 재배포되지 않습니다.