본문 바로가기

분류 전체보기

(43)
DTO에 Getter가 필요한 이유 직렬화, 역직렬화에 필요하기 때문
RESTful API에 대해 정리해둔 글 URI 명명 규칙대문자는 사용하지 않는다.URI 경로 끝에 '/' 를 쓰지 않는다.URI 경로 중에 이름이 너무 길어지는 항목에 대해서는 '-'를 이용해서 가독성을 높인다.
EC2 프리티어 인스턴스 spring boot 프로젝트 빌드 후 대폭발 돌려야할 프로세스가nginx 서버node.js 서버(next.js)tomcat 서버(spring boot)mysql 서버이렇게 있다. AWS, GCP 알뜰살뜰하게 무중단 무료 배포를 위해서 각각에 인스턴스를 하나씩 띄워서 배포해볼 생각이다.일단 MySQL은 Google Cloud Platform에 Cloud SQL로 운영 중이다.남은 프론트와 백엔드 서버를 AWS의 EC2 하나에 띄워야되는데, 아니 이게 nginx랑 빌드된 next.js는 잘 실행이 되었는데, 스프링 프로젝트가 gradle로 빌드하면 인스턴스가 그냥 그자리에 선채로 죽어버린다. jvm이라 그런지 무거운 거 같다.보니까 이거는 빌드를 EC2에서 하면 안될 거 같고, 빌드된 파일을 EC2로 옮기는 식으로 바꿔야될 거 같다. 여간 귀찮아진 일..
[SNS 프로젝트] JPA 연관관계 매핑 실수 게시글 테이블(Post)의 id 값 JPA에서 생성전략을 IDENTITY로 설정해 두었고, 실제 MySQL에 테이블 생성 이후, auto_increment로 설정이 되어있는 것도 확인을 했다.근데 사용자가 게시글을 작성한 이후에 두 번째 게시글을 작성하려 하니 자꾸 duplicated entry 오류를 뱉었다.게시글 작성 로직이었기에 매번 Post 객체를 새로 생성해서 영속성 캐싱 문제일 확률도 없을 텐데 혹시 몰라 save() 이후에 flush()도 해보고 auto_increment도 수동으로 설정해 보고 별짓을 다 했다.  아래는 문제의 소스코드(이상한 점을 눈치챈 사람이 있나요?)duplicated entry 오류가 발생하던 부분이 알고보니 기본키가 아니라 user_id 외래키가 1대 1로 매핑되어..
[Docker] 도커란 무엇인가? 그리고 컨테이너, 이미지 핵심 개념 정리 도커란 무엇인가?기본 개념은 컨테이너(리눅스 컨테이너) 생성 및 관리 도구이다.그냥 일단은 간단하게 독립된 환경에 애플리케이션과 그가 동작하기 위한 모든 것을 묶어두기 위해 사용되는 기술이라 생각하자.도커를 쓰는 이유?먼저 다음과 같은 상황이 있다고 생각해 보자.다양한 의존성이 있는 개발 환경에서 개발을 했고 이제 서버에 배포만 할 일이 남아있다. 내가 로컬에서 돌릴 때 사용했던 애플리케이션들과 의존성을 서버에도 전부 설치를 해야 되는데 일일이 다 설치할 것인가?개발자 여럿이서 하나의 프로젝트를 진행하는데 각 개발자 마자 버전이 일치하지 않는 경우 동일한 버전으로 전부 맞춰야 한다. 일일이 맞출 것인가?이와 같은 상황은 개발 환경이 로컬 개발 환경에 의존되어 있고 이를 다른 곳에서 돌릴 때 환경이 불일치..
Docker 빌드 후 이미지 찾기 도커 공부를 하려고 강의를 듣는데강의 영상에는 도커 빌드 후에 콘솔 마지막 줄에 Successfully built + Docker Image ID 가 표시되었는데 나는 그런 로그가 안뜬다..자 그러면 내가 빌드한 이미지 파일을 찾는 방법을 알아보자. 다음과 같은 명령어를 통해 빌드된 이미지들의 목록을 확인할 수 있다.docker images 내가 빌드한 도커 이미지 파일을 찾았다. 도커 빌드를 할 때 -t 옵션을 이용하여 네임 태그를 달 수 있는데 앞으로는 달도록 하자..
[AWS] S3 Transfer Acceleration 📌 S3 Transfer Acceleration 이란?클라이언트와 S3 버킷 간의 장거리 파일 전송을 빠르고 쉽고 안전하게 전송할 수 있는 버킷 수준 기능Amazon CloudFront에서 전 세계에 분산된 엣지 로케이션을 활용하여 최적화된 네트워크 경로를 통해 S3로 라우팅Transfer Acceleration을 사용하는 이유전 세계 각지에서 중앙의 버킷으로 업로드하는 고객이 있는 경우AWS SAA 시험에도 해당 내용이 적용되는 문제가 있다.A company collects data for temperature, humidity, and atmospheric pressure in cities across multiple continents. The average volume of data that t..
[데이터베이스] 제약조건 NOT NULL과 DEFAULT 두 개를 같이 써야 할까? 🤔 의문나는 대부분 프로젝트를 진행하면 각 DB Column 들의 제약 조건에 웬만하면 NOT NULL을 붙인다. 그러다가 DEFAULT 제약 조건을 적용할 일이 생겨서 DEFAULT를 붙이고 보니 NOT NULL과 DEFAULT가 공존했는데, 대충 봤을 때는 DEFAULT가 있는데 NOT NULL이 동작할 일이 없지 않나? 하는 의문이 들었다. NULL은 상당히 민감한 문제이기에 NOT NULL을 제거할까 하다가 조금 더 알아보니 NOT NULL도 필요하다는 것을 알 수 있었다.NOT NULLNOT NULL 이란 이름 그대로 NULL 값이 들어오면 오류를 발생시킨다.NULL 값이 들어오는 상황에는 무엇이 있을까?사용자가 해당 속성의 값을 입력하지 않은 경우. ( 이는 DEFAULT 제약이 있다면 해결..