분류 전체보기
들어가기 전에 Spring Eureka 에 대한 이해를 위해 작성한 글입니다. 이쁘게 봐주세요 Service Discovery & Service Registry 필요성 MSA 의 장점 중 하나가 부하량에 따라 인스턴스 개수를 동적으로 조절할 수 있다는 점이다. 덕분에 MSA 의 마이크로 서비스들의 인스턴스의 개수가 가변적이고 그에 따라 각각의 서비스들의 위치 파악이 힘들다. 효과적인 마이크로 서비스들의 관리 및 운영을 위해 필요한 것이 서비스 디스커버리와 서비스 레지스트리이다. Service Discovery 서비스 디스커버리는 MSA 에서 마이크로 서비스들의 위치를 찾기 위한 매커니즘이다. 즉 방법 같은 거다. - 클라이언트가 서비스 레지스트리를 조회 - 특정 프로토콜을 이용 클라이언트 어플리케이션이 ..
Cloud Computing 컴퓨팅 리소스를 인터넷을 통해 서비스로 사용할 수 있는 주문형 서비스 https://cloud.google.com/learn/what-is-cloud-computing?hl=ko 클라우드 컴퓨팅이란 무엇인가요? | Google Cloud 클라우드 컴퓨팅에 대해 헷갈리시나요? 퍼블릭 클라우드 컴퓨팅은 확장 가능한 주문형 서비스를 제공합니다. 클라우드 컴퓨팅 유형에 대해 자세히 알아봅니다. cloud.google.com 내가 중고 거래 사이트 창업을 했다고 가정하자. 인터넷에서 활발한 거래가 이루어 짐으로 이를 위해서 직접 온프레미스 환경을 구축한다. 우선 서버 컴퓨터를 설치할 서버 실이 필요하다 나중에 잘될 수 있기 때문에 충분한 공간이 필요하다 서버 컴퓨터만 있는 것이 아닌 ..
목표 가끔 코딩 테스트 문제를 풀다가 정렬에 대한 문제가 나오는데, 헷갈릴 때가 많다. 항상 헷갈리는 이유중 하나가 왜 선택 정렬이고 왜 삽입 정렬이고 이런 생각을 안해봐서 그렇다. 그래서 이번 기회에 선택 정렬, 버블 정렬 , 삽입 정렬에 대해서 공부하고 정리해 보려고 한다. 그 중 선택 정렬에 대해 간단히 정리해 보았다. 선택 정렬 현재 인덱스에 들어갈 값을 선택하는 정렬 즉, 루프를 돌면서 해당 인덱스에 올 데이터를 선택하는 정렬이다. 선택정렬을 사용하여 오름차순으로 정렬 할 때, 첫번째 인덱스에 올 데이터는 어떻게 구해야 할까? 크기가 100 개 인 경우, 첫번째 인덱스를 제외한 나머지 숫자들 중 가장 작은 숫자를 구하고 구한 수 ( 12 ) 와 현재 첫번째 인덱스에 있는 수를 비교하여 작은 값을..
내가 JPA 강의를 보고 작성한 VELOG 시리즈 영속성 컨텍스트를 통해 데이터를 관리하기 위해서는 엔티티 객체의 영속화가 필요하며, 엔티티의 생명주기를 관리해야한다. 이를 위해서 entityManager 에 있는 메소드 들에 대해서 알아보자 flush flush : 영속성 컨텍스트의 내용들을 데이터베이스화 동기화 하기 위해 사용하는 메소드 쓰기 지연 큐에 있는 쿼리들을 적용하여 동기화를 도와주는 메소드이다. commit 메소드 호출 시 자동으로 호출 된다. clear clear : 영속성 컨텍스트를 초기화 하는 메소드 persist persist : 비영속 상태의 엔티티를 영속화 하는 메소드 일반적으로 새로 생성한 엔티티 객체를 영속화 할 때 사용하는 메소드 이다. Spring DATA JPA 에서 R..
내가 JPA 강의를 보고 작성한 VELOG 시리즈 목표 이전 까지 영속성 컨텍스트를 이해하기 위해 필요한 PesistenceUnit, EntityManager, EntityMangerFactory 에 대해서 알아봤다. 이번에는 영속성 컨텍스트 내부의 1차 Cache, 쓰기 지연 큐에 대해서 알아보자 쓰기 지연 큐 하이버 네이트의 쓰기지연 사실 JPA 에서는 쓰기지연을 구현하지 않는다. 하지만 JPA 구현체 중 하이버네이트에서 쓰기 지연을 구현하고 있고, 하이버네이트 구현체를 사용하고 있기 때문에 쓰기 지연 기능이 가능한 것이다. 엔티티가 영속화가 되면 영속화 된 엔티티의 정보가 쓰기 지연 큐 에 엔티티 쿼리 정보가 등록이 된다. 이후 특정 이벤트 발생 전까지 엔티티의 상태가 변경되면 변경 내용을 쓰기 지..
내가 JPA 강의를 보고 작성한 VELOG 시리즈 목표 지난 번에 영속성 컨텍스트에 대해서 알아봤다. 영속성 컨텍스트는 데이터베이스의 테이블을 관리하기 위해서 엔티티라는 객체를 사용하여 데이터 조작을 한다. 엔티티의 생명 주기에 대한 이해를 통해 작동 원리에 대한 이해를 높여 보자 엔터티의 생명 주기 4 가지 비영속 ( new / Transient ) - 순수한 객체 상태이며, @Entity 로 선언된 객체 인스턴스 이며 영속성 컨텍스트에 등록되지 않은 상태 Member newMember = new Member(); 영속 ( Managed ) - @Entity 로 선언된 객체를 영속성 컨텍스트에서 관리하는 상태를 말한다. - 관리되는 상태에서 JPA 의 여러가지 API 를 사용할 수 있게 된다. - 영속..
내가 JPA 강의를 보고 작성한 VELOG 시리즈 영속성 컨텍스트 영속성 컨텍스트 ( Persistence Context ) : 자바에서 데이터 베이스 테이블과 Mapping 할 객체 ( Entity ) 를 관리하는 환경 영속성 컨텍스트에 대한 이해를 위해 알아야할 내용들이다. PersistenceUnit JPA 를 사용하는 설정 정보와 DB 접속 정보를 담고 있는 단위로써 Persistence.xml 파일 형식으로 구성하거나 Spring 환경의 경우 application.yml 등의 어플리케이션 설정 파일에 정의할 수 있다. ( 사실상 SpringBoot 환경을 많이 사용하면 application.properties 나 application.yml 에 DB 접속 정보 및 JPA 설정 정보를 정의하기 때..