jmeter(3)
-
인터페이스 JMeter 성능 테스트
MSA 서비스 개발시 보통 REST 방식을 가장 많이 쓸것이다. REST방식외에 WebFlux와 gRPC 방식으로 개발했을때 성능을 테스트 해보았다. WebFlux의 경우 R2DBC와 JDBC 방식으로 개발하여서 테스트를 진행하였다. 테스트 전의 예상의 WebFlux는 비동기 방식을 지원하더라도 일부 NoSQL이 아닌 RDB의 경우 Blocking 방식으로 처리 되어서 JDBC 연동은 느릴것으로 생각했었고 R2DBC는 비동기 방식을 지원하기 때문에 R2DBC가 빠를 것으로 예상했으나 그렇지는 않았다. 물론 단순희 조회 하나만 테스트 해서 그럴 수 있을 것이다. 향후 좀더 다양한 케이이스를 추가해봐야겠다. 테스트시나리오 1초에 동시에 100명의 사용자가 현재 위치에서 가까운 스타벅스 매장을 검색한다고 가정..
2023.02.10 -
RateLimiter 예제
소개 아래 글은 https://resilience4j.readme.io/docs/ratelimiter 사이트의 Introduction 원문입니다. Rate limiting is an imperative technique to prepare your API for scale and establish high availability and reliability of your service. But also, this technique comes with a whole bunch of different options of how to handle a detected limits surplus, or what type of requests you want to limit. You can simply declin..
2021.08.22 -
Bulkhead 예제
소개 Resilience4j는 동시 수행의 제한을 두기 위해 두 가지 bulkhead pattern을 제공합니다. SemaphoreBulkhead FixedThreadPoolBulkhead SemaphoreBulkhead 동시 요청 수를 제한을 두고 요청 수에 도달한 이후 요청에 대해서는 BulkheadFullException이 발생한다. FixedThreadPoolBulkhead 시스템 자원과 별도로 thread pool을 설정하고 설정된 thread pool은 서비스를 제공하기 위한 용도로만 사용한다. 그리고 thread pool과 별도로 waiting queue를 설정할 수 있다. 만약 thread pool과 waiting queue 가 full 인 경우 BulkheadFullException이 발..
2021.08.15