강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

허지노님의 프로필 이미지
허지노

작성한 질문수

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

회원 조회 API

스트림으로 DTO만들거나 for문으로 DTO로 변환 질문드립니다.

작성

·

391

0

강사님 안녕하세요 1편에 이어 2편도 수업을 정말 잘듣고 있습니다.

 

다름이 아니라 회원 조회시 v1으로 했을 땐 Entity를 그대로 노출 하거나 하면 위험하기도 해서 v2에선 DTO로 변환을 해서 Result 라는 객체에 DTO를 보내셨는데요. 

 

정말 궁금한건 데이터가 실무에선 1~10건 이정도가 아니고 1만건을 줘야 한다거나 이런 경우도 충분히 발생할 수 있다고 보는데

 

그렇게 되면 강사님이 알려주신데로 for문 또는 stream으로 변환을 해서 보내게 되면 클라이언트가 응답할 시간이 좀 많이 늘어날거라고 생각되는데 거기에 대해서는 따로 속도 이슈라던지 성능 이슈라던지 생겼을것 같습니다. 제 짧은 생각으로는요!

그런경우는 어떤식으로 처리를 하셨는지.. 정말 비법이 궁금합니다. 다른 영상 찾아보고 라이브러리 찾아봐도 바로 변경 해주는 것도 있긴한데 솔직히 직관적으로 개발 하려면 강사님이 알려주신 방법이 좋다고 보는데요.. 이런 이슈가 발생한적이 혹시 없으신지요...

퀴즈

API 개발에서 JPA 엔티티 객체를 요청 파라미터나 응답 값으로 직접 사용하는 것을 지양해야 하는 주된 이유는 무엇일까요?

데이터베이스 성능이 저하되기 때문입니다.

API의 스펙이 엔티티의 변화에 직접적으로 영향을 받기 때문입니다.

클라이언트 측의 데이터 파싱 로직이 복잡해지기 때문입니다.

네트워크 전송량이 불필요하게 증가하기 때문입니다.

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 허지노님

페이징을 사용하시면 됩니다^^

감사합니다.

허지노님의 프로필 이미지
허지노

작성한 질문수

질문하기