Engineering WIKI
-
DAO, DTO, VO, Entity 개념 뿌수기!Engineering WIKI/Docs 2023. 9. 21. 06:07
DAO(Data Access Object) 란? repository := DAO (거의 비슷함) 김영한님 설명 이 둘은 거의 같다고 생각하셔도 무방합니다. 좀 더 깊이있게 차이를 설명하자면, repository는 엔티티 객체를 보관하고 관리하는 저장소이고, DAO는 데이터에 접근하도록 DB접근 관련 로직을 모아둔 객체 입니다. 둘 다 개념 차이일뿐 실제로 개발할 때는 비슷하게 사용합니다. 실제로 DB에 접근하는 객체이다. Persistence Layer(DB에 data를 CRUD하는 계층)이다. Service와 DB를 연결하는 고리의 역할을 한다. SQL를 사용(개발자가 직접 코딩)하여 DB에 접근한 후 적절한 CRUD API를 제공한다. JPA 대부분의 기본적인 CRUD method를 제공하고 있다. ..
-
[인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 2장.서블릿Engineering WIKI/Spring Boot 2023. 9. 20. 00:44
해당 내용은, '인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (유료 - 69,300) 김영한님 강의'를 개인적으로 개념정리를 위해 정리한 내용입니다. 프로젝트 생성 사전 준비물 Java 11 설치 IDE: IntelliJ 또는 Eclipse 설치 스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트 생성 https://start.spring.io 스프링 부트 3.0을 선택하게 되면, JAVA 17 사용해야 함 javax 패키지 이름을 jakarta로 변경해야 합니다. 오라클과 자바 라이센스 문제로 모든 javax 패키지를 jakarta로 변경하기로 했습니다. ex) JPA 애노테이션 javax.persistence.Entity → jakarta.persistence.Entity 자세한 내..
-
[일래스틱 스택 6 입문] 3장. 유사도 검색Engineering WIKI/Book 2023. 9. 17. 15:25
[일래스틱 스택 6 입문] 1장. 일래스틱 소개 일래스틱서치 개념 및 사용 이유 일래스틱서치는 실시간 분산 검색 및 분석 엔진으로, 수평적으로 확장할 수 있다. 또한 일래스틱 스택의 핵심으로, 중앙에서 데이터를 저장해 다양한 문제를 해 wonos.tistory.com [일래스틱 스택 6 입문] 2장. 일래스틱서치 시작하기 [일래스틱 스택 6 입문] 1장. 일래스틱 소개 일래스틱서치 개념 및 사용 이유 일래스틱서치는 실시간 분산 검색 및 분석 엔진으로, 수평적으로 확장할 수 있다. 또한 일래스틱 스택의 핵심으로, wonos.tistory.com 일래스틱서치의 핵심이라 할 수 있는 검색 기능 분석기 구조 문자 필터 : 0개 이상 토크나이저(Tokenizer) : 정확히 1개 토큰 필터(Token filter..
-
기초부터 다지는 엘라스틱서치 운영 (1 ~ 2장) / 훑어보기 및 기본동작Engineering WIKI/Book 2023. 9. 7. 13:15
1장. ElasticSearch 훑어보기 / 2장.ElasticSearch 기본 동작 1.1 ElasticSearch란 ElasticSearch는 루씬(Lucene) 기반의 오픈 소스 검색 엔진이다. JSON 기반의 문서를 저장하고 검색할 수 있으며 문서들의 데이터를 기반으로 분석 작업도 할 수 있다. 준실시간 검색 엔진 : 실시간이라고 생각할 만큼 색인된 데이터가 매우 빠르게 검색됨 클러스터 구성 : 한 대 이상의 노드를 클러스터로 구성하여 높은 수준의 안정성을 이루고 부하를 분산할 수 있음. 스키마리스 : 입력될 데이터에 대해 미리 정의하지 않아도 동적으로 스키마를 생성할 수 있음. REST API : REST API 기반의 쉬운 인터페이스를 제공하여 비교적 진입 장벽이 낮음 {”title”:”tes..
-
[인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 1장.웹 애플리케이션 이해Engineering WIKI/Spring Boot 2023. 9. 7. 01:41
해당 내용은, '인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (유료 - 69,300) 김영한님 강의'를 개인적으로 개념정리를 위해 정리한 내용입니다. 내용 서블릿 컨테이너: 서블릿들의 생성, 실행, 파괴를 담당한다. 서블릿들을 위한 상자(Container)입니다. 서블릿 이란 ? : 클라이언트의 요청을 처리하고 그 결과를 반환하는 기술 서블릿 컨테이너는 서블릿의 탄생과 죽음을 관리한다. 서블릿 클래스를 로딩하여 인스턴스화 초기화 메소드를 호출 요청이 들어오면 적절한 서블릿 메소드를 호출합니다. 서블릿 소멸 시 Garbage Collection(가비지 컬렉션)을 진행 서블릿 컨테이너 의 가장 중요한 기능은 요청을 올바른 서블릿에 전달해서 처리되도록하고, JVM이 해당 요청을 처리 한 후에는..
-
[일래스틱 스택 6 입문] 2장. 일래스틱서치 시작하기Engineering WIKI/Book 2023. 8. 22. 23:36
[일래스틱 스택 6 입문] 1장. 일래스틱 소개 일래스틱서치 개념 및 사용 이유 일래스틱서치는 실시간 분산 검색 및 분석 엔진으로, 수평적으로 확장할 수 있다. 또한 일래스틱 스택의 핵심으로, 중앙에서 데이터를 저장해 다양한 문제를 해 wonos.tistory.com 일래스틱서치와 같은 도큐먼트 지향 저장소는 데이터의 추상적 개념을 사용한다. 인덱스 타입 도큐먼트 클러스터 노드 샤드 및 복제본 매핑 및 타입 역색인 인덱스 : 단일 타입의 도큐먼트를 저장하고 관리하는 컨테이너이다. / 관계형 데이터베이스의 데이터베이스 스키마와 거의 유사하다. 일래스틱서치에서 타입은 테이블, 도큐먼트는 테이블 레코드와 같다. 일래스틱서치 6.0 이전 버전에서는 단일 인덱스에 여러 타입을 포함할 수 있었다. 6.0버전 부터는..
-
[일래스틱 스택 6 입문] 1장. 일래스틱 소개Engineering WIKI/Book 2023. 8. 22. 03:38
일래스틱서치 개념 및 사용 이유 일래스틱서치는 실시간 분산 검색 및 분석 엔진으로, 수평적으로 확장할 수 있다. 또한 일래스틱 스택의 핵심으로, 중앙에서 데이터를 저장해 다양한 문제를 해결하거나 예상치 못한 상황을 발견해 적절한 조치를 취할 수 있다. 일래스틱서치를 데이터 저장소로 사용하면 얻을 수 있는 주요 이점 스키마리스와 도큐먼트 지향 검색 분석 풍부한 클라이언트 라이브러리와 REST API 지원 운영 및 확장 용이 거의 실시간 (Near Real Time) 신속성 결함 허용성 (Fault tolerant) 스키마리스 및 도큐먼트 지향 데이터 구조에 엄격한 기준이 없고, 다양한 JSON 도큐먼트를 저장할 수 있으며, 관계형 데이터베이스의 행, 열과 달리 일래스틱서치에서 일급객체로 취급된다. 엄청난 ..
-
Reverse Proxy, Forward Proxy 개념 뿌수기!Engineering WIKI/Docs 2023. 8. 19. 08:20
개념 프록시 서버 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램을 가리킨다. 중계 서버라고 생각하면 된다. 클라이언트와 서버가 직접 통신하지 않고 중계 서버인 프록시 서버를 사용하여 보안, 트래픽 분산 등 여러 장점을 가질 수 있도록 해준다. 장점 보안 : 프록시 서버를 사용하게 되면 클라이언트나 서버의 IP를 모두 숨길 수 있다. 실제 서버 또는 클라이언트의 IP를 숨기고 프록시 서버의 IP만 공개됨에 따라 해킹 대비 가능. 성능 : 캐싱 기능과 트래픽 분산으로 성능 향상을 가져올 수 있다. 캐싱 기능은 자주 사용되는 동일한 요청을 캐싱하여 재활용하는 방식 실제 서버로 다시 호출하지 않고 프록시 서버가 대신 응답을 주어 서버의 자원 ..