[Gitlab CI/CD 2] 환경 변수 분리하기
지난 주간회의에서 받은 피드백을 반영하여 배포 자동화 프로세스를 개선하자! 빌드 부분을 자세히 설명하길래 gitlab-ci.yml 파일을 봤는데, 실행에 필요한 환경 변수까지 빌드 단계에서 주입하는 것은 지양해야 한다. 현재는 Dockerfile 자체가 .env의 모든 내용을 이용하도록 설계되어 있는데, 변수를 분리해라. .env N...
지난 주간회의에서 받은 피드백을 반영하여 배포 자동화 프로세스를 개선하자! 빌드 부분을 자세히 설명하길래 gitlab-ci.yml 파일을 봤는데, 실행에 필요한 환경 변수까지 빌드 단계에서 주입하는 것은 지양해야 한다. 현재는 Dockerfile 자체가 .env의 모든 내용을 이용하도록 설계되어 있는데, 변수를 분리해라. .env N...
인턴십에서 진행하는 프로젝트 개발을 마치고 사용자 피드백을 받으며 애자일하게 이슈를 처리하고 있는데, 첨부 파일과 관련해서 Body Size Limit, File Size Limit 문제가 발생했다. 어떤 오류 로그를 가지고 있고 어떻게 해결했는지 정리해두자! Body Size Limit SvelteKit application adapter-nod...
인턴십에서 개발에 참여한 프로젝트의 배포 자동화 업무를 담당하게 되었다. 처음에는 기존에 회사에서 사용하고 있던 방식으로 배포했는데, 이 방식이 온프레미스 서버에 수동으로 배포하는 작업이었다. 이를 위해서 애플리케이션을 로컬에서 빌드하고, 빌드한 이미지를 서버에 보낸 후 서버에 접속해서 run하는 절차를 거쳐야 했다. 불필요하게 반복적인 작업을 자주...
많은 프로젝트 경험이 있는 것은 아니지만, 프로젝트를 할 때마다 도구에 대한 고민이 큰 편은 아니었다. 데이터베이스설계 과목으로 인해 MySQL은 친숙했고, 인턴십에서 진행하는 프로젝트의 데이터베이스는 MariaDB 이다보니 NoSQL에 대한 고려는 전혀 하지 않았었다. ✅ 하지만 인턴십을 진행하면서, 매일 6500 정도의 사용자가 활발히 이용하는 ...
메시지 지향 미들웨어(MOM) 응용 소프트웨어 간의 비동기적 데이터 통신을 위한 소프트웨어 메시지를 전달하는 과정에서 보관/라우팅/변환 할 수 있다는 장점을 가진다. 보관 : 메시지의 백업 기능을 유지함으로써 지속성 제공 → 송수신 측은 동시에 네트워크 연결을 유지할 필요가 없다. 라우팅 : 미들웨어 계층이 직접 메시지 라우팅 수행...
이번 방학 때 좋은 기회로 GDSC-CAU : 푸앙이 사진관 프로젝트에 백엔드 개발자로 참여하게 되었다. 메시지 큐로 몰려드는 AI 프로필 생성 요청을 관리하는 파트를 맡게 되었다. 메시지 큐 도구들을 살펴보기 전에, 운영체제에서 메시지 전달에 대해 복습하면서 기존 메시지 큐 도구들을 살펴보면 좋을 것 같아 글을 남긴다! 프로세스들이 서로 ...
인턴으로 참여하는 프로젝트에서, WEB - DB처럼 웹이 바로 데이터베이스에 접근하는 구조인데, WEB - WAS - DB 와 같은 구조로 변경해야 한다. 현재는 WEB 내의 api/routes에 구현된 API들을 사용하는데, WAS가 제공하는 API를 사용하도록 해야 한다. 웹 애플리케이션으로 SvelteKit / Svelte를 사용하고 있고, O...
✅ 🏝️ Fairy-Tale Island 🏝️ 리팩토링! Spring Database 접근 방식 Spring에서 데이터베이스에 접근하는 방식들을 알아본다. ORM 이전의 접근 방법들과 단점을 알아보고, 이를 보완하기 위해 등장한 ORM의 개념과 Spring에서 사용하는 Java ORM 기술을 알아본다. #1 [Database] ORM 정의, 등장...
✅ 🏝️ Fairy-Tale Island 🏝️ 리팩토링! Spring Database 접근 방식 Spring에서 데이터베이스에 접근하는 방식들을 알아본다. ORM 이전의 접근 방법들과 단점을 알아보고, 이를 보완하기 위해 등장한 ORM의 개념과 Spring에서 사용하는 Java ORM 기술을 알아본다. #1 [Database] ORM 정의, 등장...
✅ 🏝️ Fairy-Tale Island 🏝️ 리팩토링! 2월에 개발을 할 때, 어떤 것은 Repository 인터페이스에 선언만 하고 사용할 수 있고, 어떤 것은 그것만으로 불충분해서 쿼리를 작성해야 하는 경우가 있었다. JPA의 장점이라고 하는 인터페이스 선언만으로 사용할 수 있는 것에 대해서 흐릿하게 아는 상태에서 JPA를 사용하다보니, 혹시 ...