1주차 과제는 과제의 요구 사항를 충족하면서 기존의 코드를 객체지향적인 코드로 변경하는 과제였다. 과제를 수행하면서 고민해볼 주요 사항들은 다음과 같았다.상수 관리코드 중복의 없애는 것가독성이 좋은 코드읽기 쉬운 변수명, 메서드명각 Item 별로 남은 판매 일수, Qu
20만 건의 데이터를 읽어와 데이터베이스에 저장하는 로직을 구현하면서, JPA의 saveAll() 방식과 JDBC를 활용한 Bulk Insert 방식을 비교하며 겪었던 차이를 중심으로 작성한 글이다.대량 데이터 저장 기능은 시스템 성능에 직접적인 영향을 미치기 때문에,
위 메서드에 대하여 같은 게시글에 대하여 요청이 들어올 경우, 해당 조회수에 대한 증가는 순차적으로 이뤄져서 동기화가 이루어져야 한다. 하지만 적절한 동시성 제어를 하지 않고 해당 메소드를 실행하게 되면 동일 게시글에 대하여 대량의 요청이 실행 될 경우 제대로 된 조회
2025년 개발자로서 이루고자 하는 목표를 적어보자. 😀2025년의 목표를 세우기 전에, 먼저 2024년의 나를 돌아봐야겠다.2024년은 한마디로 매력 있는 백엔드 개발자가 되기 위해 고군분투한 시간이었다. 다양한 개발 프로젝트에 뛰어들며 배운 것을 실제로 적용해봤고
기존 코드를 통해서 인기 게시글 조회 소요 시간을 측정하게 되면 다음과 같은 결과가 나오게 된다. 동시에 발생한 요청이 실행된 횟수가 총 500회 일 경우, 요청 당 평균 응답 시간은 5.145 초가 소요되었다. TPS(Transaction Per Second)를 의미
4번의 백엔드 네트워킹 및 과제를 하면서 이전에는 개발을 하면서 경험해보지 못한 많은 부분을 배웠다.그 전에 백엔드 개발을 할 때는 대용량 트래픽, 대량의 데이터 등에 대해서 고려하지 하지 않고 기능 구현에 집중했다.이번 네트워킹 과제를 진행하면서 로직상에 문제가 없다
3-2학기에 운영체제 과목에서 배운 프로세스와 스레드 개념을 복습해보고, 이를 Spring Boot에서 어떻게 활용하는지 알아볼게요.프로세스는 실행 중인 프로그램의 가장 작은 단위로, 하나의 실행 흐름을 가진 프로그램을 의미해요.즉, 프로그램이 메모리에 로드되어 실행되