PART1
나는 서비스를 위해 HystrixCommand를 사용하는 동안 jmeter를 사용하여 높은 동시성 테스트를 수행합니다. 테스트 결과가 너무 나쁘다. 코드 ->높은 동시성 하에서 springcloud hystrix의 심각한 문제가 있습니까?
@HystrixCommand(fallbackMethod = "helloFallback")
@RequestMapping(value="/hello", method=RequestMethod.GET)
@ResponseBody
public ResponseResult hello() throws Exception{
ResponseResult responseResult = new ResponseResult();
responseResult.setCode(200);
responseResult.setData("bank test ok");
return responseResult;
}
public ResponseResult helloFallback(){
ResponseResult responseResult = new ResponseResult();
responseResult.setCode(400);
responseResult.setData("timeout error");
return responseResult;
}
테스트 reuslt : jmeter_test1
PART2
내가 HystrixCommand 주석 경우, 시험 결과는 perfect.code->
// @HystrixCommand(fallbackMethod = "helloFallback")
@RequestMapping(value="/hello", method=RequestMethod.GET)
@ResponseBody
public ResponseResult hello() throws Exception{
ResponseResult responseResult = new ResponseResult();
responseResult.setCode(200);
responseResult.setData("bank test ok");
return responseResult;
}
public ResponseResult helloFallback(){
ResponseResult responseResult = new ResponseResult();
responseResult.setCode(400);
responseResult.setData("timeout error");
return responseResult;
}
시험은 결과 ->jmeter_test2
팁 : 스레드 그림 jmeter_test3
서비스를 직접 전달하고 호출하는 데 zuul을 사용하면 테스트 결과가 동일합니다. 높은 동시성 또는 내 코드에 문제가있는 동안 springcloud hystrix 문제입니다. 모든 답장을 환영합니다!