본문 바로가기

전체 글117

Docker란? Docker 설명에 앞서 Container는 - 애플리케이션이 동작하기 위해 실행 파일 및 엔진 등을 패키지화하고 격리하는 기술이다. - 따라서, 인프라를 쉽고 빠르게 관리 할 수 있다. 그렇다면 Docker는 무엇인가? - 기존의 리눅스 컨테이너 기술을 활용 - 애플리케이션을 컨테이너로 좀 더 쉽게 활용 가능한 Go언어기반 오픈소스 - 기존의 하이퍼바이저를 사용한 가상 머신과 달리 리눅스로 운영체제가 고정되어 있어, - 운영체제별 작업이 줄어들어 성능이 향상된다. - Docker에는 다양한 프로젝트가 존재(아래는 그 예시) - Docker 프로젝트는 Docker Engine(Docker)를 효율적으로 사용할 수 있도록 도와준다. 그렇다면 Docker의 사용 이유? - 앞서, 잠깐 언급했던 것과 같이 D.. 2024. 1. 27.
[프로그래머스] 미로 탈출 명령어 2023 KAKAO BLIND RECRUITMENT 미로 탈출 명령어 문제를 풀어보았다. BFS를 사용하여 접근하였고 사전 순서대로 이동하는 것은 정렬대신, 알파벳 사전 우선순위를 토대로 해당 방향으로 먼저 움직이게 작성하였다. 맨 처음엔 시간 초과가 발생하여 bfs() 메소드 내의 반복문에 적절하게 시간 단축 로직을 추가 작성하였다. BFS import java.util.LinkedList; import java.util.Queue; /** * n x m (x, y) -k-> (r, c) */ class Solution { static int n; static int m; static int x; static int y; static int r; static int c; static int k; sta.. 2024. 1. 27.
Git Notion 정리 내용 간단한 Git 명령어들을 노션에 정리한 내용이다. git init # 깃 저장소를 초기화 한다. .git 파일이 들어감 # 작업 트리: 현재 활동 하고 있는 환경(작업 디렉토리) # 스테이지: add 하면 스테이지에 올라감 # 저장소: commit 하면 저장소에 올라간다. git status # 수정된 파일, 커밋해야 되는 파일 등등을 보여줌. git log # 커밋 내역을 보여줌 여기서 나오는 해시값을 이용해 reset, stash가 가능함(커밋 해시, 최신 버전, 작성자, 로그 등) git commit -am # 한 번 커밋한 파일은 add를 한 번에 수행 가능함 git diff # 방금 수정한 파일이 저장소에 있는 최신 버전의 파일과 어떻게 다른 지 확인이 가능 git log —stat # 커밋에 .. 2024. 1. 26.
[SpringBoot] JPA 페치 조인 최적화 1. 특정 조회 작업 시 엔티티를 그냥 반환하는 경우 @GetMapping("/api/v2/simple-orders") public List ordersV2(){ //ORDER 2개 //N + 1 -> 1 + 회원 N + 배송 N List orders = orderRepository.findAll(new OrderSearch()); List collect = orders.stream() .map(o -> new SimpleOrderDto(o)) .collect(Collectors.toList()); return collect; } 문제점 1 만약 엔티티 설정에 지연 로딩으로 설정하여 놓았다면, 해당 엔티티와 연관된 엔티티들에는 프록시가 들어간다. 하지만, 기본적으로 이 프록시 객체를 Json으로 생성하는.. 2024. 1. 26.
안녕하세요! 진꿈청 입니다. 안녕하세요, 백엔드 개발자를 꿈꾸고 있는 진꿈청이라고 합니다! 어느 순간 개발자에게 중요한 것은 기록 또 기록이라는 것을 느끼게 되어 블로그를 시작하게 되었습니다. 많이 미숙하고 서툴지만 열심히 기록하는 개발자가 되기 위해 노력하려 합니다. 감사합니다! 2024. 1. 26.