카테고리 없음

[DEV] JSP 파일 수정 및 캐시 오류 해결 과정

Potato_H 2021. 7. 9. 17:57
반응형

웹 페이지를 개발할 때 나는 주로 index 파일이 HTML인 파일만 가지고 작업을 진행했었다.

 

HTML 파일은 CSS나 JS 파일을 수정하면서 웹 브라우저에서 쉽게 열어볼 수 있어, 수정본을 바로 확인할 수 있다는 장점이 있다.

 

하지만 이번에 내가 맡은 홈페이지 수정 작업에서는 index 파일이 JSP 확장자인 파일이었다. 또한 처음부터 개발하는 것이 아니라 기존 홈페이지를 대규모로 변경해야 하는 상황이었다.

 

수많은 파일을 천천히 훑어보면서 이해하려고 노력했다.

 

하지만 JSP 파일은 수정하면서 웹 브라우저에서 수정된 것을 실시간으로 확인할 수 없었다.

 

그래서 불편하고 시간이 오래 걸리지만 Filezilla를 이용해 수정본을 서버에 계속 덮어쓰면서 업로드하여 어떻게 동작하는지 보면서 작업을 진행했다.

 

특히 CSS 파일에 수정할 부분이 많아 이미지와 함께 올려보았는데, 처음에는 웹에 잘 반영되다가 두세 번째 수정을 하다 보니 서버에 올린 파일은 수정된 파일인데도 불구하고 웹에서 개발자 도구를 통해 확인해보면 수정되기 전 파일이 표시되었다.

 

처음에는 서버에 자주 올리다 보니 반영되는 시간이 길어졌다고 생각해서 기다려 보았다. 그러나 점심을 먹고 돌아왔는데도 반영이 되지 않았다.

 

그래서 파일명도 바꿔보고, index 파일 내의 참조 경로가 틀린지 계속 확인해보았다.

 

아무리 봐도 틀린 게 없어서 당황스러웠다. 내가 해결할 수 있는 모든 방법을 시도해보았지만 처음 해보는 일이라 어떤 키워드로 구글링해야 할지도 몰라 막막했다.

 

경험이 많은 여러 개발자분들에게 문의한 결과, 다음과 같은 조언을 받았다:

 

1. 크롬의 강제 새로고침

2. 해당 파일을 touch 명령어로 살짝 수정

3. 해당 파일명 변경

4. Shift+F5를 사용한 새로고침

5. 웹 서버 재시작

6. “JSP 배포” 키워드로 구글링

7. “캐시 문제”로 인한 가능성: Ctrl+Shift+R

 

지금 생각해보면 캐시를 지우면 해결될 것 같기도 하지만, 여러 방법을 한번씩 시도해봐야 할 것 같다.

 

 

캐시는 데이터를 미리 복사해 놓는 임시 저장 장소를 의미한다. 데이터를 빠르게 접근할 수 있도록 미리 저장해 두는 방식으로, 캐시는 데이터 접근 시간을 줄여주는 중요한 역할을 한다.

 

캐시를 사용하지 않을 경우, 데이터 접근 시간이 오래 걸리거나 값을 다시 연산해야 하는 상황이 발생할 수 있다. 예를 들어, 데이터가 원래 저장된 장소에서 접근하는 데 시간이 많이 걸린다면, 캐시를 통해 더 빠른 속도로 데이터를 이용할 수 있게 된다.

 

내가 겪었던 문제는 웹 브라우저의 캐시 때문이었다. 웹 브라우저는 자주 접근하는 데이터를 캐시에 저장해 두어, 이후에 같은 데이터를 요청할 때 더 빠르게 불러올 수 있게 한다. 그러나 이로 인해 서버에 업로드한 최신 파일이 아닌, 캐시에 저장된 이전 버전의 파일을 불러오는 상황이 발생했다.

 

이 문제를 해결하기 위해 브라우저의 캐시를 지우는 방법을 시도했다. 대부분의 브라우저에서는 설정 메뉴에서 캐시를 지울 수 있는 옵션을 제공한다. 캐시를 삭제한 후 다시 웹 페이지를 새로고침하니, 서버에 업로드한 최신 파일이 정상적으로 반영되었다.

 

또한, 강력 새로고침(Ctrl + F5) 기능을 사용하여 브라우저가 캐시를 무시하고 서버에서 최신 파일을 받아오도록 할 수도 있다.

 

이번 경험을 통해 웹 개발에서 캐시의 중요성과 그 관리 방법을 깊이 이해하게 되었다. 캐시는 성능 향상에 큰 도움이 되지만, 잘못 관리하면 개발 과정에서 예기치 않은 문제를 일으킬 수 있다. 따라서 캐시를 적절히 관리하고, 필요할 때는 이를 무시하고 최신 데이터를 받아오는 방법을 알고 있어야 한다. 앞으로도 이런 문제를 예방하기 위해 더욱 신경 써서 개발을 진행해야겠다고 다짐했다.