목록전체 글 (106)
개발스토리
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/eTQIdg/btrdCx5cd2G/CaTrnjQNADnYVH3R6Ohka0/img.png)
데이터베이스에 접근해서 원하는 연산을 처리하려면 Connection 객체를 얻어와야 한다. 디비 서버와 애플리케이션 사이에서의 통신이기 때문에 시간이 오래 걸린다. 그렇다면, 사용자가 몰린다면 당연히 Connection 객체를 얻기 위해 엄청난 시간이 소모될 것이다. 이러한 문제를 해결하고자 필요한 양만큼의 Connection 객체를 미리 두고, Connection 요청이 들어와 객체를 생성하는 부분에서 발생하는 대기 시간을 줄이고 네트워크의 부담을 줄이고자 하는 것이 DB Connection Pool이다. 하지만, 요청에 따라 무작정 Connection을 많이 생성하면 서버에 과부하가 걸린다. 그래서 미리 설정해놓은 적당한 수의 Connection을 만들어 두고 Connection Pool에 보관해두었..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bkQq5x/btrdrv8xKvl/mvBtlnlgjoQPfDslDWlR0K/img.png)
스프링부트를 공부하면서 위 사진처럼 계속해서 찍어주는 것이 궁금했다..! 쓰고는 있지만 무엇인지 모르는 것은 이제 지양하자..! 그래서 알아보았다. HikariCP HirakiCP는 가볍고 안정적이고 빠른 JDBC Connection Pool이다!! 제로-오버헤드라고 홍보를 하고 있다. Connection Pool 개념을 모른다면 고고씽! 2021.08.30 - [Computer Science/데이터베이스] - Database Connection Pool 스프링부트 2.0부터 default이다. 또, 아래와 같은 벤치마크 결과도 제공한다. connection pool을 관리하는 게 중요한 이유는 바로 성능에 있다. 성능에 큰 영향을 끼친다. connection을 맺는 과정은 복잡하면서 컴퓨터의 자원을 많..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/MXaKP/btrcEwNVSbt/itK5n5laCnnAJdFMraEtk1/img.png)
스프링을 시작하면서 회원가입 & 로그인을 직접 구현하는 도중에 보안이나 권한 처리 등 직접 생각하고 구상할 것 들이 많아서 힘들어하는 와중에 스프링 시큐리티를 접하게 되었다. Spring Security가 뭘까...? 우리가 사용하는 대부분의 어플리케이션들 또한, 우리가 만드려는 어플리케이션에는 인증과 권한이 필요하다. 사용자 권한을 가진 사용자는 관리자 페이지로 이동이 안되는 것. 권한의 영역이다. 또한, 어플리케이션을 사용하기 위해 자신이 사용자라는 것을 인증하는 것. 이 두가지는 어떻게 보면 당연하면서도 생각보다 까다로운 것들이다. 왜냐면 각종 보안 위협에 대응도 해야 하고, 세션을 유지하는 과정 등 생각할 것이 많기 때문이다. 우선 정의부터 얘기하자면, ■ Spring Security는 엔터프라이..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/od4Ak/btrci9MAmS6/NjtBcjh8xii6nakFIAylmK/img.png)
스프링부트를 시작하고 얼마 안되고 나서.. 오류에 직면했다..! 컨트롤러에서 서비스를 주입 받아야 하는데 암만 해도 저 빨간색이 사라지지 않는 것.... 디렉토리가 이상한가 해서 살펴봐도 이건 아닌 것 같고... 검색을 해보니 인텔리제이 버그일 수도 있다 하는데 그건 정상 실행 됐을 때고.... 자꾸 삽질을 하고 있는 것 같아서 스트레칭 한 번 하고 에러 로그를 찬찬히 읽어봤다. 아까는 보이지 않던 친절한 로그를 발견....!! 이게 서비스 자체가 bean에 등록이 안되어 있는 것 같아서 서비스 파일을 천천히 읽어보니... 머가 상당히 이질감이........ 서비스 어노테이션이 없다....... 빨간색이 사라졌다... 어노테이션이 아직 익숙치 않고, 에러 로그를 제대로 안읽는 습관이 아직 남아있다...!..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bZTnY2/btq9Y47uGQ4/K0N8ORLaDkW6GkJukiyl30/img.png)
Nest 공식 문서를 바탕으로 정리한 게시글입니다. Nest에는 애플리케이션 전체에서 처리되지 않은 모든 예외를 처리하는 예외 레이어가 내장되어 있다. 코드에서 예외를 처리하지 않으면 이 레이어에서 예외를 포착하여 적절한 응답을 자동으로 보낸다. 기본적으로 이 작업은 HttpException 유형의 예외를 처리하는 내장 전역 예외필터에 의해 수행된다. 예외가 인식되지 않는다면 내장된 예외필터가 다음과 같은 기본 JSON 응답을 생성한다. { "statusCode": 500, "message": "Internal server error" } Throwing standard exceptions Nest는 @nestjs/common 패키지에 내장 HttpException 클래스를 제공한다. 특정 오류 조건이 ..