우리는 계속 논쟁을 벌이고 있습니다.토론 : 타사 라이브러리를 전쟁에 추가하는 것이 좋은 생각입니까?
a. 웹 앱을 조립하는 "표준"방식. 모든 응용 프로그램 아티팩트가있는 WAR를 생성하고 hibernate 및 memcached 등의 다른 모든 구성 요소는 tomcat/shared/lib 영역에 배포됩니다.
b. 포함 된 모든 내용과 tomcat/shared/lib의 내용은 모두 엄청난 전쟁을 만듭니다.
장점 - 모듈화가 유지되고 전쟁이 적습니다. 특히 배포 프로세스에서 공유/lib에 대한 종속성을 관리해야한다는 단점이 있습니다.
장점 - 모든 종속성은 빌드 프로세스에서 제어되어 오류가있는 공간을 제거합니다. b 전쟁에 대한 단점은 정말로, 정말로 큽니다. 대규모 팜에 네트워크를 통해 배포하는 경우 영향을 미칠 수 있습니다.
다른 사람들이 어떤 생각을 갖고 있는지 알고 싶습니다.
흥미 롭습니다. 우리는 서버를 완전히 통제하고 있습니다. 당신은 좋은 점을 만들었지 만, 서로 다른 웹 응용 프로그램에서 동일한 구성 요소의 여러 버전을 사용하지 않으려 고합니다. ops/mgmt 관점에서 바람직한 목표가 아닙니까? 필자는 일상적으로 여러 가지 버전의 XML 파서를 찾는 것이므로 낙심하지 않은 이유가 없습니다. –
나는 당신과 동의한다 - 만약 당신이 앱과 서버를 통제하고 있다면, 제 3 자 라이브러리 버전의 컨버전스를 위해 노력해야한다. 나는 이것으로 많은 도움이되는 maven을 사용한다. 그렇다고하더라도 배포 문제가 아닌 버전 관리 문제로 간주됩니다. 모든 응용 프로그램이 동일한 lib 버전으로 테스트 되었기 때문에 lib를 공유 할 수 있지만 버전 관리가 먼저 공유 라이브러리를 사용할 수있는 길을 열어야합니다. – mdma
그래, 나는 동의한다. Maven을 사용하여 관리합니다. 그러나 단일 전쟁으로 옮겨 가려는 생각이 조금 있지만 우리는 변화의 가치가 있는지 토론하고 다른 사람들이 보았을 수도있는 혜택이 있는지를 토론하고 있습니다. –