1부(1장 ~ 7장) : NoSQL 핵심 개념, RBDMS와 다른 점 2부(8장 ~ 15장) : NoSQL을 이용한 시스템 구현 1장 : NoSQL이 빠르게 각광받게 된 배경 2장 : NoSQL 세상의 주요 모델 설명 (키-값 모델, 문서 데이터 모델, 칼럼 패밀리) 3장 : 집합 구조의 단점 : 다른 집합 구조에 속하는 엔터티, 그래프 데이터베이스 4장 : 분산 : 복제(마스터 슬레이브, 피어 투 피어), 샤딩, 일관성 문제 5장 : 일과넝 업데이트, 읽기, 정족수의 역할, 지속성, CAP정리 6장 : 변경 추적, 비일관성 제거를 위한 버전 스탬프 7장 : 병렬 계산, 맵-리듀스 8장 : 키-값 DB의 예시인 리악 사용 9장 : 문서 DB의 예시인 몽고 DB 10장 : 칼럼 패밀리 DB의 예시인 카산드..
2장 마이크로서비스 아키텍처를 구축할 때 프로젝트의 아키텍트는 다음 세 가지 일에 집중한다. 1. 비즈니스문제의 분해 2. 서비스 세분화의 확정 3. 서비스 인터페이스의 정의 1. 비즈니스 문제를 기술하고 그 문제를 기술하는 데 人居된 명사에 주목하라 문제를 기술하는 데 동일한 명사가 반복해서 사용되면 대개 핵심 비즈니스 영역과 마이크로서 비스로 만들 기회가 드러난다. 1장에서 EagleEye 영역의 대상 명사는 계약과 라이선스, 자산 같은 것이다. 2. 동사에주목하라 동사는 행위를 부각하고 문제가 되는 영역의 윤곽을 자연스럽게 드러낸다. 여러분이 “트랜잭 션 X 는 A와 B 에서 데 이 테 ■ 가져와야 해 .”라고 말한다면 대개 여러 서비스가 엮여 동작 중인 상태다. EagleEye에 동사 관찰 방법을..
1-1. 마이크로 서비스란? 모놀리식 아키텍처 (monolithic architecture) : 배포 가능한 단 일 소프트웨어 산출물 UI 및 비즈니스 로직,데이터베이스 액세스 로직 모두가 하나의 애플리케이션 산출물로 패키징되고 애플리케이션 서버에 배포 마이크로서비스 아키텍처 대형 애플리케이션을 관리하기 쉽고 제한된 책임을 담당하는 컴포넌트로 분해 HTTP와 JSON(JavaScript Object Notation) 같은 경량 통신 프로토콜 사용 1-2. 스프링이란 무엇이고 마이크로서비스와 어떤 관련이 있을까? Java EE의 단점 EJB(Enterprise Java Beans) Container 기반의의 Java EE 개발은 제공하는 API를 상속 받아야만 했고 부가적인 코드를 작성해야 하는 등의 불편..