2015-01-07 2 views
1

Tomcat 7 (다른 버전에서는이 문제가 있는지 확실하지 않음)이 gzip 압축을 간헐적으로 적용하지 못하는 것 같습니다.Tomcat 7에서 gzip 압축을 사용하는 데 문제가 있음

특정 시작/배포에는 작동하지 않지만 서비스를 중지하고 시작하면 다시 시작될 수 있습니다.

그래서 특정 시작을 기반으로 작동하지 않는 것으로 보입니다. 이것은 기본적으로 1 일 반 동안 미쳐 버렸고 configs 등으로 돌아 다니고 있었지만 반복적으로 변경할 수는 없었습니다. (이제는 20-30 번 정도 체크해야합니다. (긴 하루였습니다!)) Tomcat 서비스를 중지하고 시작하여 작동 시키거나 작동하지 마십시오. 그것 gzipping 물건의 확률은 약 50 %입니다 - 처음에 나는 그것이 안정적으로 작업을 따르고 있다고 생각/패턴을 작동하지 않지만 때로는 당신이 그것을 몇 번 연속으로 작동하게 할 것입니다.

나는 훌륭한 치약으로 통나무를 통과 해 왔으며 어떤 시동에도 문제가 있다는 것을 나타내는 것은 아무것도 없습니다.

흥미롭게도 같은 기본 구성 (다른 변수를 배제하기 위해 하루 종일 달리었던)으로 전혀 작동하지 않는 다른 서버가 있습니다. 남은 유일한 차이점은 하나는 더 많은 앱을 보유하고 있다는 것입니다 (다른 하나는 내 컴퓨터 임). 많은 앱을 보유함으로써 부정적인 영향을받는 경주가 있는지 궁금합니다. 로드합니다.

또한 NIO (비 차단 커넥터)와 useSendfile="false" (카탈로니아 로그에서 알려주므로 정상 차단 차단을 사용하는 경우 무시 됨)을 사용하여 실험했지만 동일한 문제가있는 것으로 보입니다.

정말 혼란 스럽습니다.

내가 해봤 자원/일의 일부를 :

또한 위의 도움이 어느 날 두 컴퓨터 사이의 차이를 이해하지 . 빌드 서버에서 우리는 대부분 동적 로딩을 사용하지만 내 컴퓨터에서는 하드 코딩 된 컨텍스트를 사용합니다. 나는 비록 내가 didnt 일을 서버에서 하드 코딩 된 문맥을 설정하면서 나는 그것을 배제한 것처럼 느낀다.

또 다른 사실은 using apache and tomcat together에 대해 이야기하고있는 사람들이 아파치에서 압축을해야한다는 것입니다. 우리는 그렇게하지 않습니다! 그냥 바람둥이예요.

편집 난 그냥 내 서버의 브라우저를 사용하여 압축을 시도하는이 ... 압축이에 노력하라는 메시지가 across this post 발견 한

! 그걸 어떻게 만들지 모르겠다!

더 반사에 편집

나는 파이어 폭스가 설치되지 않는 크롬이었다 서버에 사용되는 브라우저 - 그것은이 안정적 헤더에 무슨 일이 일어나고 있는지보고있을 가능성은 ... 나는 것 같네요 미래에 컬 + wireshark에 충실!

+0

서버가 청크 외에도 콘텐츠 길이 *를 보내지 않는다고 wireshark에서 다시 확인할 수 있습니까? 예 : 해당 줄에있는 문제는 https://bugzilla.mozilla.org/show_bug.cgi?id=237623을 참조하십시오. – Gijs

답변

1

확인.서버의 로컬 호스트에서 작동하는 것처럼 보인 후에 더 많은 진단을 수행했습니다.

파이어 폭스와 yslow (yslow를 사용하기 위해서는 방화범이 필요함)와 함께 파이어 폭스의 일반 네트워크 탭을 사용하고 있음을 언급 할만한 가치가 있습니다. 이것들은 모두 간헐적으로 압축이 작동하지 않는다고보고했습니다.

컬을 사용하면 압축이 안정적으로보고되고 있음이 밝혀졌습니다.

그런 다음 wireshark를 사용하여 브라우저가 수행하는 작업을 기웃 거리며 스누핑했습니다. 파이어 폭스 + yslow가 말하는 것은 아니지만 동일한 요청에 대해 압축이 켜져 있음을 확인할 수 있습니다 (압축 된 넌센스 및 모든 것을 볼 수 있음).

여기에 무슨 일이 일어나고 있는지 알 수 없지만 도구에 오류가있는 것으로 보입니다.

결론은 yslow와 firebug를 신뢰하지 않습니다 ... 그들은 당신에게 거짓말을합니다! 그들은 다른 것들을로드하는 데 유용하지만 압축이 켜져 있는지 여부를 감지 할 수는 없습니다. 파이어 폭스에서 yslow의 문제 일 수도 있습니다. 아마도 파이어 폭스가 요청에 대해 말하는 내용을 보았을 것입니다.

1

빅터가 파이어 폭스 bug you filed에서 언급했듯이 파이어 폭스의 네트워크 탭에는 압축되지 않은 크기 만 표시됩니다. ("크기"열 아래). Firefox 37 (현재 야간)에서는 압축 된 크기를 볼 수 있습니다 (새로운 "전송 됨"열 아래).

+0

안녕하세요, 감사합니다. 이것이 똑같은 것인지 확신 할 수 있습니다. 이것은 실제로 헤더가 어떻게해서 왜곡되어 있음을 보여주었습니다. 압축 된 크기와 압축되지 않은 크기를보고하지 않는 것보다 더 심각한 문제인 것처럼 보입니다. 그 문제의 끝 부분에는 내가 정말로 따라갈 수없는 몇 가지 앞뒤가있었습니다. 간헐성을 설명 할 수있는 것이 있습니까? –

+0

방금 ​​문제를 확인했습니다. 아직 거기에 + wireshark에서 일부 스크린 샷 + 스 니펫을 올렸습니다. –

+0

그리고 jryans가 더 많은 질문을했습니다 ... 기본적으로 e10s를 사용 중지하고 결과가 변경되는지 확인하십시오. 저희에게 알려주십시오! – Gijs