반응형
Spring-Boot: 여러 요청 동시 처리
Spring Boot을 사용하여 RESTful 웹 서비스를 구축하고 있습니다.제 아이디는 이클립스 산소입니다.
나는 크롬을 통해 2초마다 여러 개의 HTTP get 요청을 보내지만, 하나씩 트리거됩니다.각 요청은 이전 요청이 완료될 때까지 기다립니다.
다음은 내 컨트롤러 코드입니다.
@RestController
@RequestMapping("/dummy")
public class DummyController {
@RequestMapping(method = RequestMethod.GET)
public ResponseEntity<Map<String, String>> dummytsp(@RequestParam(value="msg", defaultValue="Hello") String msg) {
System.out.println("" + new Date() + ": ThreadId " + Thread.currentThread().getId());
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Map<String, String> response = new HashMap<>();
response.put("message", msg);
return new ResponseEntity<>(response, HttpStatus.OK);
}
}
콘솔 출력은 다음과 같습니다.
Thu Sep 14 11:31:15 EDT 2017: ThreadId 25
Thu Sep 14 11:31:20 EDT 2017: ThreadId 26
Thu Sep 14 11:31:25 EDT 2017: ThreadId 28
Thu Sep 14 11:31:30 EDT 2017: ThreadId 30
콘솔 출력에는 컨트롤러가 5초마다 호출되는 것으로 표시됩니다.하지만 저는 2초마다 요청을 보내고 있습니다.
들어오는 여러 요청을 동시에 처리하려면 어떻게 해야 합니까? (2초마다 콘솔 출력을 확인해야 합니다.)
업데이트:
제가 다른 브라우저로 요청을 보내면 완벽하게 작동합니다.세션을 공유하는 동일한 브라우저/애플리케이션에서 테스트하면 문제가 발생합니다.
동일한 세션에서 여러 개의 동시 요청을 수락할 수 있습니까?
감사합니다!
기본적으로 Spring Boot 웹 응용 프로그램은 멀티 스레드이며 여러 요청을 동시에 처리합니다.
이것은 브라우저별 특이점일 수 있습니다.Windows 10에서 Chrome & Firefox는 여러 요청을 동일한 URL로 큐잉하는 것처럼 보이지만 IE, Edge 및 curl은 그렇지 않습니다.
언급URL : https://stackoverflow.com/questions/46223363/spring-boot-handle-multiple-requests-concurrently
반응형
'programing' 카테고리의 다른 글
오라클의 기존 인덱스에 열 추가 (0) | 2023.07.22 |
---|---|
Spring Boot 1.3.3 @EnableResourceServer 및 @EnableOAuth2So 동시에 (0) | 2023.07.22 |
Oracle의 STANDARD_HASH와 일치하도록 Python의 정수 해시 (0) | 2023.07.22 |
Spring boot 응용 프로그램의 사용자 지정 오류 페이지로 리디렉션하는 중 오류 발생 (0) | 2023.07.22 |
Oracle DELETE 성능 향상 전략 (0) | 2023.07.22 |