NodeJS를 이용해서 대용량 데이터 처리 관련해서 개발을 하다 아래와 같은 에러 메시지를 만났다.이 에러는 그냥 말 그대로 메모리 사용량이 증가하면서 Javascript엔진이 터져버린 것이다.NodeJs의 기본적인 메모리 제한은 512MB다. 그럼 내가 처리를 하려고
Spring Boot를 이용해서 Spring Security 실습을 하는 도중 JWT 발급 관련해서 아래와 같은 에러가 발생했다.Unable to determine a suitable MAC or Signature algorithm for the specified ke
Dockerfile로 Node.js 어플리케이션을 말아서 docker-compose를 사용해 DB도 같이 띄우려고 docker-compose up --build 명령어를 실행하는 도중에err: exec: "docker-credential-desktop" 라는 에러가 발
단위 테스트는 필수적인 작업이라고 생각한다. 단위 테스트는 어플리케이션의 특정 기능이 기대한 대로 동작하는지 확인하는 데 도움을 준다. 이 글에서는 JUnit과 Mockito를 사용해서 Spring 어플리케이션에서 단위 테스트를 작성하는 방법을 설명하려고 한다. 1.
Spring Boot 프로젝트에서 Gradle을 사용해서 의존성을 관리할 때, 다양한 의존성 설정 옵션을 통해 특정 상황에 맞게 라이브러리를 관리할 수 있다. 이 글에서는 Gradle의 주요 의존성 관리 옵션인 implementation, compileOnly, ann
개인 프로젝트를 진행하다 git push를 할 때 제한된 권한관련 에러가 발생했다. 가끔 다른 맥북으로 개발하다보면 생기는 에러인데, 매번 구글에서 검색하기 귀찮아서 직접 작성해보려고 한다.우선 github에 들어가서 오른쪽 프로필 이미지를 누른다.Settings를 클
최근에 회사에서 갑작스러운 트래픽으로 서버가 다운됐었다😢 상황을 정리하자면 현재 회사는 Elastic Beanstalk(이하 EB)을 사용하고 있고, EB를 사용해서 ALB, EC2, Auto Scaling을 하고 있다.그런데 여기서 Auto Scaling 하는 과정
회사에 점점 더 프로젝트에 참여하는 인원들이 증가하고, 회사에서 새로운 개발문화 gitFlow를 도입하면서 서로 작업한 코드를 PR을 올리게 됐다.현재 회사에서 프로젝트는 nestJS를 사용하고 있다. 하지만 PR을 올리고 코드리뷰를 하면서 eslint와 같은 이슈들이
socket 공부를 할겸 작은 프로젝트를 만들고, DB와 각 코드들을 세팅 후 코드를 실행시키는데 키자마자 아래 에러가 나타났다.NestJS를 하면서 처음 보는 에러,, 구글링도 해보고 chatGPT에게도 물어봤지만 내가 찾고자 하는 해결 방법을 찾지 못했다.그래서 찾
AWS 마이그레이션을 하는데 메인 운영환경의 EB의 상태는 괜찮은데, 개발 환경의 EB의 상태가 Severe가 되면서 처음 겪어보는 문제라 뭔가 싶어서 작성을 해보게 되었다.원인 보기를 눌러서 봐도 이게 무슨소리인지 몰라서 재빠르게 구글링을 했더니 어떤 분께서 문제 해
회사에서 AWS를 마이그레이션하는데, 기존에 사용하던 계정 버킷에 업로드된 이미지들을 옮기려고하는 계정으로 가져와야해서 작성하게됐다.구글링을 해보면 수많은 방법이 존재하는데, 본인은 AWS CLI를 이용하는 방법을 채택하여 계정간 S3 버킷 내 데이터를 migratio
회사에서 AWS 마이그레이션을 할 기회가 생겨서 AWS CLI를 사용하려 한다. 기존에 구성되어 있는 서버를 다른 계정으로 옮겨야 하는데,, 아마 12월은 밤새는 달이 될 것 같다.우선 AWS 마이그레이션을 하기 전에 스냅샷을 떠서 옮길 수 있는것들은 곧 바로 옮기기
이번 글에서는 백엔드 개발에서 기본적으로 사용되고 있는 Repository, Service, Controller를 정리해보고자 한다. 일반적으로 다들 이러한 패턴을 사용하니까 사용했던게 커서 정리를 하려고 한다. Repository, Service, Controlle
Eager Loading은 TypeORM에서 Entity 간의 관계를 로드 하는 방법 중 하나로, 만약에 사용자 User와 그 사용자의 게시물인 Post간의 관계를 보면위와 같이 정의를 하면 자동으로 Eager Loading 설정을 통해 사용자를 검색할 떄, 관련 게시
get과 set은 Class 내에서 속성을 읽고 쓸 때 사용되는 특별한 메서드다. 이런 기능을 사용하면 객체의 속성에 접근하는 동작을 Customize하고 추가 동작을 수행할 수 있다.Getter는 Class 내의 속성 값을 읽을 때 호출되는 메서드로 아래와 같이 정의
Docker Container 삭제 동작중인 Container 확인 정지된 Container 확인 Container 삭제 Container 삭제 확인 여러 Container 삭제 모든 Container 삭제 Docker Image 삭제 Image 확인
VARCHAR와 TEXT는 데이터베이스에서 문자열 데이터를 저장하는 데 사용되는 데이터 타입이다. 이 두 타입은 목적과 사용 사례에 따라서 선택이 되며, 성능과 저장 용량 등 여러 측면에서 차이가 있다.VARCHAR는 가변 길이 문자열 데이터 타입이다. 즉, 문자열 길
Cloud SQL은 GCP(Google Cloud Platform) 에서 제공하는 완전 관리형 관계형 데이터베이스 서비스다. 이 서비스를 사용하면 MySQL, PostgreSQL 및 SQL Server와 같은 관계형 데이터베이스를 클라우드에서 배포, 관리 및 확장할 수
git merge와 git rebase는 둘 다 브랜치를 병합하는 데 사용되는 Git 명령어이다. 그러나 두 명령어의 작업 방식과 결과가 다르다.git merge는 현재 브랜치와 다른 브랜치의 변경 사항을 하나로 합치는 병합 작업을 수행한다. 주요 특징은 아래와 같다.
Object.assign()은 Javascript에서 객체를 병합하거나 복사할 때 사용되는 메서드다. 이 메서드를 사용하면 하나 이상의 소스 객체의 속성을 타깃 객체로 복사할 수 있다. 즉, 소스 객체의 속성을 타깃 객체에 병합하거나 덮어쓰는 역할을 수행한다.Objec