올라가는 AWS 서버 비용으로 인해 nGrinder 를 로컬 환경에서 진행하기로 했다. 네트워크 환경이 클라우드 환경과는 달라 차이가 있을 수 있지만 부하는 대응하기 위한 테스트를 하기 위해서는 테스트 작업으로 로컬 환경에서 환경을 구성해보기로 했다. ngrinder 에서는 로컬 환경에서 구성 방법과 에러 기록들을 간단히 기록해놓는다. 설치했던 버전은 현재 최신 버전인 ngrinder-controller ver.3.5.9 을 사용했다. 1. ngrinder-controller & ngrinder-agent 설치 [1] download ngrinder-controller(1) download ngrinder-controller filengrinder github 에 접속해 원하는 버전의 ngrinder-c..
이번 기록은 nGrinder 에 대해 알아보고 연습해보는 과정에 관한 기록이다. nGrinder 는 jpython(python running on JVM) 으로 작성된 네이버에서 제공하는 오픈소스 부하 테스트 도구이다. 크게 Controller 와 Agent 로 구성되어 있어 여러 개의 동시 테스트가 가능하도록 여러 기능을 확장이 가능하고 TPS over VUser, Reliability over Accuracy 와 같은 철학을 가지고 있다. naver 에서 말하는 nGrinder 에서 제공하는 기능은 아래와 같다. nGrinder 에서 이야기하는 기능 제공에 관한 내용을 번역한 내용Jython 스크립트를 사용하여 테스트 시나리오를 생성하고 여러 에이전트를 사용하여 JVM에서 스트레스를 생성하세..
pinpoint architecturepinpoint agent : application monitoring metric 을 pinponit collector 에 전달pinpoint collector : pinpoint agent 에서 받은 데이터를 HBase 에 저장pinpoint web : HBase 에서 데이터를 조회해 Web UI 형태로 시각화된 모니터일 서비스를 제공 installation pinpointspring boot 3 는 pinpoint 2.5.1 부터 지원하기 때문에 참고하도록 하자!(그리고 pinpoint agent, controller 는 버전을 동일하게 맞춰 사용하는 것을 권장한다.)https://github.com/pinpoint-apm/pinpoint/issues/9599[..
1. HTTP Caching응답 값의 복사본을 재사용하여 리소스를 불러오는 속도를 향상시키기 위함이다.일반적으로 GET 응답만 캐싱하며, 를 구조 형태로 가진다.캐싱한 리소스의 위치는 브라우저의 private cache 에 존재할 수도 있고, 프록시 서버(proxy, reverse proxy, CDN) 의 Shared Cache 로 존재할 수도 있다. 2. HTTP Cache 동작 원리cache hit : 클라이언트가 요청한 데이터가 캐시되어 있는 경우, 캐시에 존재하는 데이터를 클라이언트에게 전달cache miss : 클라이언트가 요청한 데이터가 캐시되어 있지 않은 경우, 서버로 부터 데이터를 조회해 클라이언트에게 전달 (해당 데이터는 캐시에 저장)cache revalidation캐시의 사본이 최신..