조금이라도 정적인 자원들에 대해서 빨리 로딩하는 방법이 없을까 고민하고 있었는데  우연히 정적 리소스에 대한 cache와 compress를 보았다. 그래서 한 번 테스트 해볼까 한다. 

Cache 

application.json 에 아래 내용을 추가한다. (초단위 60x60x10 = 10시간) -> 테스트시간임

spring.resources.cache.period=36000

처음 호출 

처음 호출했을 경우 200과 함께 사이즈 시간을 볼 수있다. 

새로고침 을 누르고 다시 조회 보면 304 와 함께 max-age를 통해 캐쉬가 됨을 확인

사이즈와 시간이 줄어듬을 확인

처음 호출 이후에 지정된 시간까지 캐쉬를 통해 절약할 수 있음 알았다. 

자바소스에서는 WebMvcConfigurer 를 implements 하여 쓸 수 있다. 

registry.addResourceHandler("/**")
                .addResourceLocations("classpath:/static/")
                .setCachePeriod(36000)
        ;

Compress

압축을 해보자 . application.json 에 다음을 추가하자

server.compression.enabled=true
server.compression.mime-types=text/html,text/xml,text/plain,text/css,text/javascript,application/javascript
server.compression.min-response-size=2048

그리고 호출 

압축 안함
압축 이후에 시간 사이즈와 시간 비교이다 
gzip으로 압축됨을 표시

네트워크 환경에 따라서 속도는 다르게 나올 수 있다 하지만 사이즈가 엄청 크거나 로딩이 느리다면

고민해서 활용을 해보면 좋을 것 같다

+ Recent posts