Fastly_CDN

패스틀리(Fastly), Fiddle로 VCL테스트를 해보자!

CDN_SKY 2022. 3. 29. 11:15

VCL은 Varnish Control Langugue의 약자로 Varnish Server를 콘트롤 하기 위해 사용되는 언어 입니다. Fastly의 캐쉬서버는 Varnish 기반으로 제작되었으며, 이 역시 VCL로 관련 동작들이 컨트롤 되게 됩니다.

 

앞서 제가 다룬 Post에서의 내용 처럼 간단한 기능들은 Fastly에서 제공하는 Fastly APP이라 불리는 UI에서 설정이 가능하지만, 좀 더 복잡하게 캐쉬에 대한 제어를 하고 싶을 경우에는 VCL Snippet이나 Customer VCL의 항목에서 직접 VCL을 코딩 삽입하여야지 가능한 경우가 있습니다.

 

내가 작성한 VCL이 제대로 작성된 코드인지 확인하기 위해서는 UI에서 설정한 내용을 반영하여 확인하는 방법도 있겠지만, 테스트에 사용할 수 있는 오리진이 당장 없다거나, VCL의 공부를 한다거나, 급하게 기능에 대해서 확인하고 싶은 VCL코드에 대해서 일일이 UI에서 작업을 하는 것은 약간은 불편함을 감수해야만 합니다.

 

다행이 패스틀리에서는 Fastly Fiddle tool(https://fiddle.fastlydemo.net/) 이라는 사이트를 제공합니다. Javascript나 Golang같은 언어에 비유하자면 Playground정도로 생각하시면 될 것입니다. 관련해서 간단하게 소개해 드리도록 하겠습니다.

 

위의 캡쳐 화면이 Fiddle에 접속했을 때 여러분이 처음 볼 수 있는 화면 입니다.

 

1번은 클릭해서 여러분이 원하는 타이틀을 정할 수 있는 부분입니다. Fiddle은 작성하게 되면 고유의 URL이 생성되며, 해당 URL을 기억만하면 언제 어디서든지 내가 작성한 Fiddle을 참고 할 수 있습니다. 이 때에 어떤 기능을 구현한 Fiddle인지 타이틀로 구분해 놓으면 나중에 알어 보기 쉽겠죠?

 

2번은 Origin Server를 설정하는 부분입니다. 기본적으로 https://httpbin.org 로 설정되어 있습니다. 해당 사이트에 접속해 보시면 여러분이 HTTP관련해서 테스트 해 볼수 있는 많은 예제들을 만날 수 있으므로 꼭 방문해 보시길 권장합니다. 오리진은 복수개로 구성도 가능합니다.

 

3번은 제일 중요한 VCL코드를 작성하는 부분입니다. VCL의 Subroutine 별로 구분되어 있으며, 내가 필요한 코드를 적절한 Subroutine에 기입하여 테스트 할 수 있습니다.

 

4번은 테스트에 사용할 URI를 기입하는 곳입니다. 기본적으로는 /status/200 이 기입되어 있습니다. 이름 그대로 http 200 response를 확인하기 위해서 사용되는 URI입니다만, https://httpbin.org 를 방문하시면 더 많은 관련 URI들을 확인하 실 수 있습니다.

 

그럼 오리진 서버와 VCL코드, 그리고 테스트에 사용할 URI가 준비되었고 코드에 특별한 문제가 없다면, 5번이 RUN으로 활성화 될 것입니다. 실행 결과는 화면의 오른 쪽의 로켓 그림쪽에 표시 될 것 입니다. 

 

오늘은 간단하게 Fiddle tool에 대해서 소개해 봤습니다. 해당 tool은 VCL에 대해서 이해하고 연습하기에 정말 좋은 사이트이므로 관심 있으신 분들은 꼭 활용해 보시길 부탁드립니다. 

 

다음시간에는 Fiddle을 활용한 간단한 테스트에 대해서 올려 보도록 하겠습니다. 

글 끝까지 읽어 주셔서 감사드리고, 오늘도 좋은 하루 보내세요.

 

https://developer.fastly.com/learning/vcl/fiddle/

 

Testing and debugging Fastly services with Fiddle | Fastly Developer Hub

Everything you need to build on Fastly

developer.fastly.com