본문 바로가기

Today I Learned109

(24.08.07)[17주차] Spring Batch와 스케쥴링 - 활용 및 정리 (24.08.06)[17주차] Spring Batch와 스케쥴링 이전의 글에서 Spring Batch의 정의와 구성 요소 및 기능, 그리고 Quartz를 사용해서 어떻게 작동시킬 수 있을 지에 대한 내용을 정리를 했다. 하지만, 최신버전의 Spring Boot 에 따라 기존의 Spring Batch에서 많이 사용하는 Factory들이 Deprecated  됨에 따라서 패턴이 달라졌기 때문에, 최신버전의 Spring Batch 5 기준으로 코드를 직접 작성하고, 이를 분석하면서 활용에 대비하도록 한다. Spring Batch 기본 활용환경 설정Gradle Dependency 추가implementation 'org.springframework.boot:spring-boot-starter-batch'(Appl.. 2024. 8. 7.
(24.08.06)[17주차] Spring Batch와 스케쥴링 프로젝트에서 특정 시간마다 코드 챌린지의 순위의 갱신, 그리고 Top 검색어의 30분마다의 갱신의 주기적인 작업이 필요했다. 이로써 본인의 로직은 아니지만, 담당 팀원의 구현으로 Spring Batch 의 스케쥴 기능을 사용함으로 일련의 기능들이 구현을 완성했고, 대용량 데이터 처리에 관련해서 SpringBatch를 사용 하면서 참고할 시간이 없었기에 관련되어 학습하고 정리를 하려고 한다.Spring Batch대량의 데이터를 처리하기 위한 FrameworkSpring Framework 기반의 서브 프로젝트로깅, 트랜잭션 관리, 리소스 관리 기반으로 대규모 데이터를 일괄적으로 반복 처리, 데이터 변환 및 집계, 배치 작업, 주기적인 처리를 안정적으로 자동화 작업 시행복잡한 대용량 및 고성능 일괄 작업을 효.. 2024. 8. 6.
(24.08.05)[17주차] Nginx 404 Not Found 오류 고찰과 해결 정상적으로 Java SpringBoot 기반의 BE 프로젝트와 React를 활용한 FE 가 CI/CD를 통해서 컨테이너 형식으로 웹 서버 인스턴스에서 최신화되면서 배포 파이프 라인이 일단은 완료가 되었었다. publicclassdev.com 도메인을 구입하여, 영역을 지정해 해당 웹서버 인스턴스로 접근할 수 있도록 설정을 했다.     하지만, 브라우저에서 도메인으로 진입 후, 새로고침을 하거나, 특정 주소에 직접적으로 접속을 하는 경우(ex. 브라우저 주소창에 publicclassdev.com/board/2 처럼 Path를 전부 지정해서 한번에 요청) 에 위와같은 nginx단에서 404 Not Found 에러가 발생했다. 이에 대해 고찰해보고 해결까지를 정리하면서 주의할 점을 다시 한번 상기 하도록 한.. 2024. 8. 5.
(24.08.02)[16주차] CD Pipeline 중 GitHubs자동화 배포에 대한 정리 CD Pipeline 중 GitHubs자동화 배포에 대한 정리마지막 프로젝트의 웹 서비스 제품을 만드는 것을 목표로 해서 중간 MVP 제작을 위해서 배포용 파이프 라인을 구상하고 튜터님들의 조언을 받아서 완성 후 구축을 했다.위츼 파이프 라인 중에서 CD 부분 즉, GitHub Repository로 Java 기반의 Spring Boot BE 프로젝트에대해서 코드를 Push 시켰을 때, 배포를 할 수 있는 AWS EC2 인스턴스에 도커 컨테이너에 자동으로 실행해서 인스턴스 내에 띄우도록 했다.물론 FE React 개발도 동시에 똑같이 진행을 하며, 이는 GitHub Actions 를 통한 Workflows 를 통해 진행했다.이론상은 단순하지만, GitHub Actions YAML에 작업이 기재 하는 방법 .. 2024. 8. 2.