내일배움캠프 Kotlin & Spring 3기 수료 후기
·
TIL
약 4개월간에 고군분투가 이틀전에 끝이 났다 !! 내일배움캠프 이전의 삶 & 선택한 계기 👇개발 공부가 처음은 아니였다. 2년전에도 학원을 다니며 공부와 팀 프로젝트를 진행하며 취업 활동도 했었지만 갑작스런 소집통지서가 날라오는 바람에 올해 7월26일 소집해제를 하게 됐다. 소집해제 날이 다가오자 ' 내가 다시 개발을 혼자 공부할 수 있을까 ? ' 라는 생각을 했고 답은 ' No ' 였다.  주변에 개발 공부를 하는 사람이 없었고 혼자 하게되면 나태해질게 뻔했다.그러던 중 부트캠프라는 것을 알게되었고 마침 내가 소집해제가 끝나고 나서 시작하면서 백엔드 커리큘럼을 진행하는내배캠을 선택하게 됐다. 내일배움캠프  장점 😄1. 사전캠프내배캠의 경우 9 to 9로 아침9시부터 저녁9시까지 진행되게 된다. 처음..
내배캠 - 최종 프로젝트 SpotOn
·
프로젝트
최종 프로젝트 - SpotOn거의 한달간 이루어진 마지막 팀 프로젝트가 어제 발표회를 마지막으로 마무리 됐다. 이번 협업에서 담당한 업무와 느낀점을 정리해보려고 한다.프로젝트 결과물 👇 GitHub - team4-SpotOn/spoton-backendContribute to team4-SpotOn/spoton-backend development by creating an account on GitHub.github.com 내 담당 업무 ♣️실시간 로깅 및 모니터링S3 이미지 업로드프로모션 이벤트 CRUDEC2 서버에 배포프로젝트를 진행하며 잘한 점 & 아쉬운점 🎃잘한점각 기능별로 이슈를 만들어서 작업 한 것기능 구현 사항들을 Phase 1,2,3 으로 나누어 개발 진행담당 파트에 대해 이틀전에 완료 ..
내배캠 - 플러스 팀 프로젝트
·
프로젝트
프로젝트 목표 - Cache를 이용한 성능 개선프로젝트 기간 - 24.11.22 ~ 24.11.29구성원 - 4명프로젝트 GitHub  GitHub - ocean-sunfish9/ocean-backend: ocean-backendocean-backend. Contribute to ocean-sunfish9/ocean-backend development by creating an account on GitHub.github.com KPT 회고  KeepDocker compose로 MySQL, Redis를 실행각자 properties 파일을 맞추지 않아도 되어서 편했다.개발에 관한 의견 제시시에 일방적인 강요가 아닌 설득각 이슈마다 브랜치를 생성하여 개발한 것병합할 때 충돌 최소화nGrinder 를 이용해서..
CI/CD
·
TIL
😮 CI / CD란 ?  Continuous Integration / Continuous Deployment(Delivery)의 약자로 지속적인 통합과 지속적인 제공을 의미한다.CI / CD는 애플리케이션 개발부터 배포까지 모든 단계를 자동화하여 효율적이고 빠르게 사용자에게 배포할 수 있도록 함 🙁 CI - 지속적인 통합애플리케이션의 버그 수정이나 새로운 코드 변경이 주기적으로 빌드 및 테스트되면서 공유되는 git repository에 통합되는 것을 의미Git에 Push나 PullRequest 요청이 온다면 해당 코드를 빌드하고 테스트 코드를 실행하며 문제 없는지 체크하는 과정이 자동화된다. 👉 CI의 장점자동화된 빌드와 자동화된 테스트를 제공하여 안정적인 코드를 빠르게 제공할 수 있는 밑거름이된다..
Batch Insert로 100만건 데이터 생성하기
·
TIL
👉 Batch Insert란 ?Spring Data JPA의 saveAll() 메서드를 통하여 엔티티를 저장한다면 아래와 같이 데이터의 갯수만큼 Insert 쿼리가 나가게됩니다. 이렇게 된다면 저장해야될 데이터가 많아질 수록 시간이 오래걸리고 성능저하의 문제가 발생한다.INSERT INTO users(created_at, modified_at, email, nickname, password, user_role) values('2024-11-20 20:43:05.944329', '2024-11-20 20:43:05.944329', 'dl805327@gmail.com', '권형심', '$2a$04$LbX5GfGOwEMKSBqN0QT6L.D5deA/Ys2Okyt1sc6E51uXcVh.rd0Tm', 'ROLE..
Docker - 자주 사용하는 명령어
·
TIL
😆 Docker System 정보docker version : Docker 버전 및 상세정보 확인docker -v : Docker 버전 및 빌드 버전을 한줄로 간단하게 확인docker system info : Docker의 시스템 전체 정보 확인docker system events : 서버로 부터 실시간 이벤트를 받는다.docker system df : 도커 디스크의 사용량 확인docker login -u [ID] : 도커 허브에 로그인🙂 Docker - 이미지이미지 목록 조회docker imagesordocker image ls 이미지 검색docker search [이미지 이름] 이미지 다운docker pull [이미지 이름]:[버전] //latest 기재 시 최신 버전 다운로드 가능 이미지 삭제d..
Docker란 ?
·
TIL
🤔 Docker(도커) 란 ?Docker는 컨테이너 기반의 오픈 소스 가상화 플렛폼이다.Docker는 애플리케이션과 그 의존성을 가상화된 컨테이너에 담아 효율적으로 실행할 수 있게 해준다.이를 통해 다양한 운영체제와 환경에서 일관된 실행 환경을 제공하고, 개발과 운영 간의 이식성을 높여준다. 🤯 컨테이너란?컨테이너는 도커의 핵심 개념으로,  격리된 환경에서 프로세스를 실행하기 위한 경량화된 가상화 단위로 애플리케이션과 그에 필요한 모든 종속성(라이브러리, 실행파일 등)을 컨테이너에 패키징하여 동일한 환경에서 실행할 수 있게 한다.🧐 Docker ImageDockerImage란 서비스 운영에 필요한 종속성(라이브러리, 실행파일 등)을 묶어서 가지고 있는 것이다.Dokcer 이미지들은 github와 똑..
JPA - QueryDSL을 이용한 동적쿼리
·
TIL
🤩 QueryDSL이 뭔지 모르시다면 !2024.11.15 - [TIL] - JPA - QueryDSL 🤜 요구사항일정을 검색하는 기능검색 조건- 일정 제목으로 검색할 수 있으며 부분적으로 일치해도 검색 가능- 일정의 생성일 범위로 검색할 수 있다.- 일정 담당자의 닉네임으로 검색 가능하며 부분적으로 일치해도 검색 가능- 일정 제목, 해당 일정의 담당자 수, 해당 일정의 총 댓글 갯수를 페이징 처리되어 반환되도록한다. 🤗 QueryDSL의 동적쿼리 방법QueryDSL의 동적쿼리 방법으로는 Boolean Builder 방법과 BooleanExpression 방식으로 나뉘는데 이번 검색 기능을 구현하며BooleanExpression을 이용하여 구현하였기에 Boolean Builder 방법은 간단하게 사..