작성
·
318
답변 1
18
안녕하세요. 석훈님
request scope는 강의에서 설명드린 것 처럼 대안이 있으면 가급적이면 사용하지 않는게 좋습니다. 그래도 비즈니스 상황에 따라서 이것을 사용하면 편리한 경우들이 있습니다. (저의 경우는 공통 로그 처리에서 편리하게 사용했습니다)
request scope 자체가 HTTP 요청 정보의 내용을 편리하게 다룰 수 있기 때문에, 이 요청 정보를 공통화해서 객체로 만들어두고, 공통으로 로그 처리를 하거나 또는 외부 API를 호출할 때 요청서버에서 넘어온 정보를 함께 넘기거나 할 때 유용하게 사용할 수 있습니다.
예를 들어서 요청서버 -> 현재서버 -> 대상서버
구조가 되어있을 때 요청서버에서 뭔가 요청 id를 만들어서 현재서버에 넘겼을 때 현재서버는 단순이 이 요청 id가 비즈니스 로직과는 전혀 상관이 없고, 로그용으로 필요하고, 또 대상 서버로 넘길 때 필요하다면 파라미터로 계속 가지고 다니기에는 부담스럽습니다. 이런 경우에 사용하면 비즈니스 로직을 전혀 손대지 않고, 공통 로그 처리, 외부 AP에I 파라미터 전달 등등 업무를 처리할 수 있습니다.
정리하면 request scope는 비즈니스 로직에 파라미터를 계속 들고다닐 필요 없이 공통 정보를 처리할 때 효과적입니다.
그런데 request scope 같은 것을 너무 자주 사용하면, http 요청이 없는 테스트 코드 등에서 고민할 내용이 많아지는 단점이 있습니다.
감사합니다.