2012-07-21 1 views
2

JSF에서 클러스터 전체에 결합 된 자원을 사용하는 방법이 있습니까? 기본적으로 클러스터의 첫 번째 서버가 리소스를 소개 할 수있는 솔루션을 다른 서버의 리소스 캐시에 동기화 할 수있는 솔루션을 찾고 있습니다.JSF 2.0 - 클러스터 전체에서 OmniFaces 결합 된 자원 캐시

+0

어떤 종류의 자원을 원하십니까? –

+0

@Adrian :'/ Resource' 폴더에있는 파일 중'ResourceHandler'가 처리합니다. – BalusC

+0

정적 리소스 만 캐시되므로 캐시 동기화가 필요한 이유는 무엇입니까? –

답변

4

결합 된 리소스의 고유 ID가 되돌릴 수없는 단방향 암호화 인 MD5를 기반으로 생성 되었기 때문에 불가능했습니다. 따라서 자원이 서버 X에서 작성되고 서버 Y에서 요청 된 경우, 서버 Y는 고유 ID를 기반으로 캐시에서 자원을 분석 할 수 없습니다.

OmniFaces 1.2부터 MD5 접근법을 ZLIB와 Base64의 조합으로 바꿔 고정 시켜서 짧고 뒤집을 수있게했습니다. 서버 Y는 이제 ID를 기반으로 리소스 자체를 해석 한 다음 캐시에 저장할 수 있습니다.

~, -_하여 /, += 문자를 대체하는 형태로 Base64 인코딩 방식에 추가 단계가 어느 정도 가능한 플랫폼에 맞는 URL-없이 그렇게 할 수있는 그 그것을 URL-safe를 만드는 방법에 의해있다 인코딩 번거 로움은 URL을 통해 전달됩니다.

+2

전능하신 분들이 너무 좋아요. 정말로 내 소프트웨어 스택을 무한히 향상 시켰습니다. 나는 영원히 감사한다. –

+0

당신은 환영합니다 :) – BalusC