본문 바로가기

추천 검색어

실시간 인기 검색어

스프링 부트로 개발하는 MSA 컴포넌트

마이크로서비스를 올바르게 도입하기 위한 스프링 부트 사용법!
김병부 저자(글)
길벗 · 2022년 11월 18일
8.4
10점 중 8.4점
(4개의 리뷰)
도움돼요 (33%의 구매자)
  • 스프링 부트로 개발하는 MSA 컴포넌트 대표 이미지
    스프링 부트로 개발하는 MSA 컴포넌트 대표 이미지
  • 스프링 부트로 개발하는 MSA 컴포넌트 부가 이미지1
    스프링 부트로 개발하는 MSA 컴포넌트 부가 이미지1
  • 스프링 부트로 개발하는 MSA 컴포넌트 부가 이미지2
    스프링 부트로 개발하는 MSA 컴포넌트 부가 이미지2
  • A4
    사이즈 비교
    210x297
    스프링 부트로 개발하는 MSA 컴포넌트 사이즈 비교 183x235
    단위 : mm
01 / 04
MD의 선택 무료배송 소득공제
10% 39,600 44,000
적립/혜택
2,200P

기본적립

5% 적립 2,200P

추가적립

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 2,200P
  • 리뷰 작성 시, e교환권 추가 최대 300원
배송안내
무료배송
배송비 안내
국내도서/외국도서
도서 포함 15,000원 이상 구매 시 무료배송
도서+사은품 또는 도서+사은품+교보Only(교보굿즈)

15,000원 미만 시 2,500원 배송비 부과

교보Only(교보배송)
각각 구매하거나 함께 20,000원 이상 구매 시 무료배송

20,000원 미만 시 2,500원 배송비 부과

해외주문 서양도서/해외주문 일본도서(교보배송)
각각 구매하거나 함께 15,000원 이상 구매 시 무료배송

15,000원 미만 시 2,500원 배송비 부과

업체배송 상품(전집, GIFT, 음반/DVD 등)
해당 상품 상세페이지 "배송비" 참고 (업체 별/판매자 별 무료배송 기준 다름)
바로드림 오늘배송
업체에서 별도 배송하여 1Box당 배송비 2,500원 부과

1Box 기준 : 도서 10권

그 외 무료배송 기준
바로드림, eBook 상품을 주문한 경우, 플래티넘/골드/실버회원 무료배송쿠폰 이용하여 주문한 경우, 무료배송 등록 상품을 주문한 경우
주문정보를 불러오는 중입니다.
기본배송지 기준
배송일자 기준 안내
로그인 : 회원정보에 등록된 기본배송지
로그아웃 : '서울시 종로구 종로1' 주소 기준
로그인정확한 배송 안내를 받아보세요!

이달의 꽃과 함께 책을 받아보세요!

1권 구매 시 결제 단계에서 적용 가능합니다.

해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

북카드

키워드 Pick

키워드 Pick 안내

관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

스프링 부트로 개발하는 MSA 컴포넌트 상세 이미지
마이크로서비스 아키텍처 환경에서
컴포넌트를 개발할 때 무엇이 필요한지 알아보고,
이때 필요한 스프링 부트 사용법을 익힌다!
마이크로서비스 아키텍처는 대규모 서비스의 ‘정답’처럼 여겨지기도 하지만, 실제로 구현하기도 어렵고 여러 시스템이 유기적으로 얽혀 있어 운영이 쉽지 않은 복잡한 아키텍처다. 그러므로 개발 단계나 운영 단계에서 아키텍처에 대한 이해가 매우 중요하다. 이를 돕기 위해 오랫동안 MSA 컴포넌트를 개발하며 커리어를 쌓아온 베테랑 개발자가 MSA 환경에서 컴포넌트를 짤 때 알아야 할 것들을 실무 관점으로 풀어냈다.

작가정보

저자(글) 김병부

광운대학교 무선네트워크 연구실에서 석사 학위를 받았다. 지금은 NHN Dooray에서 백엔드 시스템을 개발하고 있으며, 동시에 NHN Academy에서 미래의 개발자에게 기술을 전파하는 즐거움도 느끼고 있다. 저서로는 『자바를 다루는 기술』, 『Linux Server Bible』, 『ASP.NET 30일 완성』 등이 있다.

작가의 말

지난 수년간 스프링 프레임워크는 자바로 웹 애플리케이션을 개발할 때 필요한 대표적인 프레임워크로 자리 잡았습니다. 아니 사실상 표준 프레임워크라 해도 과언이 아닙니다. 스프링 프레임워크는 트렌드에 뒤처지지 않게 새로운 기능을 꾸준히 추가해 왔습니다. 그래서 어느덧 스프링 5까지 출시되었고 (이 글을 쓰는 시점을 기준으로) 곧 6 버전이 출시될 예정입니다. 스프링 프레임워크를 수년간 사용해 온 개발자로서 스프링 프레임워크가 계속해서 대표 웹 프레임워크로 자리매김할 것이라고 믿어 의심치 않습니다.
스프링 프레임워크는 스프링 부트라는 프로젝트를 시작하면서 제2의 중흥기를 맞이했습니다. 스프링 부트는 요즘 개발자들이 가장 많이 사용하는 프레임워크로, 프레임워크를 가장 일반적인 방식으로 미리 설정하여 제공합니다. 관례와 법칙만 맞추면 미리 설정된 프레임워크를 빠르게 사용할 수 있습니다. 우리는 그저 비즈니스 로직에 집중하기만 하면 됩니다. 그러나 개발자는 빠르게 사용할 수 있었을 뿐 스프링 프레임워크에 대한 이해는 점점 낮아졌습니다. 당연하겠지만, 스프링 부트를 사용하여 웹 애플리케이션을 만들 때는 스프링 프레임워크에 대한 이해가 필요합니다. 스프링 프레임워크에 대한 이해가 없다면 단순한 사용 방법은 익힐 수 있겠지만 버그가 발생했을 때 효과적으로 디버깅할 수 없습니다.
이 책은 예전부터 사용한 스프링 프레임워크와 스프링 부트에 대한 경험을 토대로 집필했습니다. 특히 REST-API 서버를 개발하는 데 초점을 맞추었습니다. MSA 환경에서 REST-API 서버를 구축하는 것은 필수이기 때문입니다. MSA 환경에서 다른 컴포넌트들과 유기적으로 동작하는 서버를 만들기 위해 지금까지 쌓아 온 노하우를 최대한 담으려고 노력했습니다.
이 책을 쓰면서 특정 스프링 버전에 얽매이지 않도록 스프링 부트의 세세한 기능보다는 시스템을 원활히 운영하고 개발을 효과적으로 하는 데 필요한 내용에 집중했습니다. 스프링 부트 개발을 처음 시작하거나 개념을 다잡고 싶은 개발자에게 조금이라도 도움이 되었으면 좋겠습니다.

목차

  • 1장 마이크로서비스 아키텍처
    1.1 모놀리식 아키텍처 소개
    __1.1.1 모놀리식 아키텍처 장점
    __1.1.2 모놀리식 아키텍처 단점
    1.2 마이크로서비스 아키텍처 소개
    __1.2.1 마이크로서비스 아키텍처 장점
    __1.2.2 마이크로서비스 아키텍처 단점
    1.3 마이크로서비스 아키텍처 설계
    __1.3.1 서비스 세분화 원칙
    __1.3.2 도메인 주도 설계(DDD)의 바운디드 컨텍스트
    __1.3.3 단일 책임 원칙
    __1.3.4 가벼운 통신 프로토콜
    __1.3.5 외부 공개 인터페이스
    __1.3.6 마이크로서비스마다 독립된 데이터 저장소
    __1.3.7 정리
    1.4 스프링 투어의 아키텍처 변화
    __1.4.1 스프링 투어의 시작
    __1.4.2 서비스 안정성 확보
    __1.4.3 확장의 시작
    __1.4.4 데이터 저장소의 확장
    __1.4.5 마이크로서비스 아키텍처의 시작
    1.5 12 요소 애플리케이션
    __1.5.1 코드베이스: 버전 관리되는 하나의 코드베이스와 다양한 배포
    __1.5.2 의존성: 명시적으로 선언할 수 있고 분리할 수 있는 의존성
    __1.5.3 설정: 환경 변수를 이용한 설정
    __1.5.4 지원 서비스: 지원 서비스는 연결된 리소스로 처리
    __1.5.5 빌드, 릴리스, 실행: 소스 빌드와 실행은 완전히 분리되어야 한다
    __1.5.6 프로세스: 애플리케이션은 하나 이상의 무상태 프로세스로 실행되어야 한다
    __1.5.7 포트 바인딩: 포트 바인딩을 통한 서비스 공개
    __1.5.8 동시성: 프로세스들을 통한 수평 확장
    __1.5.9 폐기 가능: 프로세스는 빠르게 시작해야 하고 안정적으로 종료해야 한다
    __1.5.10 Dev 환경과 Production 환경 일치
    __1.5.11 로그: 로그는 이벤트 스트림으로 다룬다
    __1.5.12 admin 프로세스: 시스템 유지 보수를 위한 일회성 프로세스
    1.6 정리 64

    2장 프레임워크와 스프링 부트
    2.1 스프링 투어가 스프링 부트를 선택한 이유
    2.2 스프링 프레임워크
    __2.2.1 POJO 기반의 경량 컨테이너
    __2.2.2 복잡한 비즈니스 영역의 문제를 쉽게 개발하고 운영하기 위한 철학
    __2.2.3 모듈식 프레임워크
    __2.2.4 높은 확장성과 범용성, 생태계 시스템
    __2.2.5 엔터프라이즈 애플리케이션에 적합한 오픈 소스 경량급 프레임워크
    2.3 스프링 부트 소개
    __2.3.1 단독 실행 가능한 스프링 애플리케이션
    __2.3.2 간편한 설정을 위한 ‘스타터’ 의존성 제공
    __2.3.3 스프링 기능을 자동 설정하는 ‘자동 구성’ 제공
    __2.3.4 모니터링 지표, 헬스 체크를 위한 ‘액추에이터’
    __2.3.5 XML 설정을 위한 일이 필요 없음
    __2.3.6 애플리케이션에 내장된 WAS
    2.4 스프링 부트 애플리케이션 시작하기
    __2.4.1 Maven을 사용하여 프로젝트를 구성하는 방법
    __2.4.2 스프링 이니셜라이저를 사용하여 프로젝트를 구성하는 방법
    __2.4.3 IntelliJ의 이니셜라이저를 사용하여 프로젝트를 구성하는 방법
    __2.4.4 스프링 스타터에 포함된 pom.xml 분석
    __2.4.5 @SpringBootApplication 애너테이션과 메인 클래스
    __2.4.6 스프링 애플리케이션 예제
    2.5 정리

    3장 스프링 애플리케이션 기본
    3.1 스프링 빈 사용
    __3.1.1 @Bean 애너테이션
    3.2 자바 설정
    __3.2.1 @Configuration
    __3.2.2 @ComponentScan
    __3.2.3 @Import
    3.3 스테레오 타입 스프링 빈 사용
    3.4 의존성 주입
    __3.4.1 의존성
    __3.4.2 애너테이션 기반 설정의 의존성 주입
    __3.4.3 자바 설정의 의존성 주입
    3.5 ApplicationContext
    3.6 스프링 빈 스코프
    3.7 스프링 빈 생명주기 관리
    3.8 스프링 빈 고급 정의
    __3.8.1 @Primary 애너테이션
    __3.8.2 @Lazy 애너테이션
    3.9 스프링 투어가 오해한 스프링 빈

    4장 스프링 웹 MVC 개요
    4.1 HTTP 프로토콜
    __4.1.1 HTTP 상태 코드
    __4.1.2 HTTP 특징
    4.2 스프링 웹 MVC 프레임워크
    __4.2.1 MVC 패턴
    __4.2.2 DispatcherServlet
    __4.2.3 서블릿 스택과 스레드 모델
    __4.2.4 스프링 부트 설정
    4.3 REST-API 설계
    __4.3.1 HTTP 메서드별 REST-API 예제
    __4.3.2 REST-API 특성과 설계
    4.4 간단한 REST-API 예제
    __4.4.1 @ResponseBody와 HttpMessageConverter

    5장 스프링 MVC를 이용한 REST-API 개발
    5.1 REST-API: GET, DELETE 메서드 매핑
    __5.1.1 호텔 정보 조회 API 명세서
    __5.1.2 Controller 클래스 구현
    __5.1.3 @GetMapping 애너테이션
    __5.1.4 @PathVariable 애너테이션
    __5.1.5 @RequestParam 애너테이션
    __5.1.6 @DeleteMapping 애너테이션
    5.2 REST-API 응답 메시지 처리
    __5.2.1 @JsonProperty와 @JsonSerialize 애너테이션: JSON 마셜링 예제
    __5.2.2 JsonSerializer와 JsonDeserializer 예제
    __5.2.3 @JsonFormat 애너테이션
    __5.2.4 열거형 클래스 변환
    5.3 REST-API POST, PUT 매핑
    5.4 ResponseEntity 응답과 Pageable, Sort 클래스
    __5.4.1 ResponseEntity 클래스
    __5.4.2 페이지네이션과 정렬 파라미터를 위한 Pageable 클래스
    __5.4.3 Pageable 자동 설정
    5.5 REST-API 검증과 예외 처리
    __5.5.1 JSR-303을 사용한 데이터 검증
    __5.5.2 @Valid 애너테이션과 예제
    __5.5.3 Validator 인터페이스를 사용한 검증
    __5.5.4 @ControllerAdvice와 @ExceptionHandler 예외 처리
    5.6 미디어 콘텐츠 내려받기

    6장 웹 애플리케이션 서버 구축하기
    6.1 웹 애플리케이션 기본 설정
    __6.1.1 웹 애플리케이션의 설정 메커니즘
    __6.1.2 WebMvcConfigurer를 사용한 설정
    __6.1.3 DispatcherServlet 설정
    6.2 HttpMessageConverter와 REST-API 설정
    __6.2.1 HttpMessageConverter 설정
    __6.2.2 ObjectMapper와 스프링 빈을 이용한 애플리케이션 설정
    6.3 Interceptor와 ServletFilter 설정
    __6.3.1 HandlerInterceptor 인터페이스
    __6.3.2 Filter 인터페이스
    6.4 Application.properties 설정
    __6.4.1 @Value 애너테이션
    __6.4.2 @ConfigurationProperties와 @ConfigurationPropertiesScan
    6.5 Profile 설정
    __6.5.1 Profile 변수 값 설정
    __6.5.2 프로파일별 application.properties 설정
    __6.5.3 @Profile 애너테이션과 스프링 빈 설정
    __6.5.4 @Profile 애너테이션과 인터페이스를 사용한 확장
    __6.5.5 Environment 인터페이스
    6.6 REST-API와 국제화 메시지 처리
    __6.6.1 message.properties 파일 설정
    __6.6.2 MessageSource 인터페이스
    __6.6.3 스프링 부트 프레임워크의 자동 설정 구성
    __6.6.4 LocaleResolver와 LocaleChangeInterceptor 설정 예제
    6.7 로그 설정
    __6.7.1 Logger 선언과 사용
    __6.7.2 logback-spring.xml
    __6.7.3 중앙 수집 로그
    6.8 애플리케이션 패키징과 실행
    __6.8.1 메이븐 패키징
    __6.8.2 도커 이미지 생성

    7장 스프링 AOP와 테스트, 자동 설정 원리
    7.1 스프링 AOP
    __7.1.1 AOP 용어 정리
    __7.1.2 어드바이스 종류와 설명
    __7.1.3 스프링 AOP와 프록시 객체
    __7.1.4 포인트 컷과 표현식
    __7.1.5 JoinPoint와 ProceedingJoinPoint
    __7.1.6 관점 클래스 예제
    __7.1.7 애너테이션을 사용한 AOP
    7.2 스프링 부트 테스트
    __7.2.1 스프링 부트 테스트 설정
    __7.2.2 Junit 사용 예제
    __7.2.3 @SpringBootTest를 사용한 스프링 부트 테스트
    __7.2.4 @TestConfiguration을 사용한 테스트 환경 설정
    __7.2.5 @MockBean을 사용한 테스트 환경 설정
    __7.2.6 테스트 슬라이스 애너테이션
    __7.2.7 스프링 부트 웹 MVC 테스트 예제
    __7.2.8 JPA 테스트
    7.3 스프링 부트 자동 설정

    8장 데이터 영속성
    8.1 JPA
    __8.1.1 JPA 소개
    __8.1.2 ORM과 SQL Mapper 비교
    __8.1.3 JPA 장단점
    8.2 MySQL 실행 환경 설정 458
    __8.2.1 도커를 사용한 MySQL 실행 환경 설정
    __8.2.2 테이블 설계
    8.3 Spring Data JPA 기능과 설정
    __8.3.1 Spring Data JPA 기능
    __8.3.2 Spring Data JPA 자동 설정과 필수 스프링 빈
    __8.3.3 Spring Data JPA 설정
    __8.3.4 Hikari DataSource 설정
    8.4 엔터티 클래스 설계
    __8.4.1 엔터티 클래스와 @Entity 애너테이션
    __8.4.2 엔터티 클래스 기본 키 설정
    __8.4.3 열거형과 @Enumerated
    __8.4.4 Date 클래스와 @Temporal
    __8.4.5 엔터티 클래스 속성 변환과 AttributeConverter
    __8.4.6 엔터티 클래스 상속과 @MappedSuperClass
    8.5 리포지터리 개발과 JpaRepository
    8.6 Spring Data JPA의 쿼리 메서드 기능
    __8.6.1 메서드 이름으로 쿼리 생성
    __8.6.2 예제와 테스트 케이스
    __8.6.3 @Query 애너테이션을 사용한 쿼리 사용
    8.7 트랜잭션과 @Transactional
    __8.7.1 @Transactional 애너테이션
    __8.7.2 @Transactional의 propagation 속성
    __8.7.3 @Transactional 애너테이션의 isolation 속성
    __8.7.4 트랜잭션 테스트 예제
    __8.7.5 @Transactional을 사용할 때 주의 사항
    8.8 EntityManager
    __8.8.1 EntityManager와 영속성 컨텍스트
    __8.8.2 영속성 컨텍스트의 특징
    8.9 엔터티 연관 관계 설정
    __8.9.1 연관 관계 설계
    __8.9.2 일대다 연관 관계 설정
    __8.9.3 영속성 전이와 로딩, 고아 객체
    __8.9.4 다대일 연관 관계 설정
    __8.9.5 양방향 관계 설정
    __8.9.6 다대다 연관 관계 설정
    __8.9.7 일대일 연관 관계 설정
    8.10 엔터티 상태 이벤트 처리
    8.11 트랜잭션 생명주기 동기화 작업
    __8.11.1 스프링 부트 프레임워크의 OSIV 설정

    9장 애플리케이션 통합: REST-API
    9.1 RestTemplate 클래스
    __9.1.1 RestTemplate 구조
    __9.1.2 RestTemplate 스프링 빈 설정
    __9.1.3 Connection Timeout과 Read Timeout 설정
    __9.1.4 RestTemplate 클래스
    __9.1.5 RestTemplate 예제
    __9.1.6 keep-alive와 Connection Pool 설정
    9.2 WebClient

    10장 레디스와 스프링 캐시
    10.1 레디스 소개 및 아키텍처
    __10.1.1 레디스 센티넬 아키텍처
    __10.1.2 레디스 클러스터 아키텍처
    __10.1.3 레디스 자료 구조
    __10.1.4 레디스 유효 기간
    10.2 Spring Data Redis 사용
    __10.2.1 RedisAutoConfiguration 자동 설정
    __10.2.2 레디스 도커 설정
    10.3 Lettuce 라이브러리와 커넥션 설정
    __10.3.1 RedisConnectionFactory 설정
    10.4 레디스 문자열 예제와 RedisSerializer 설정
    10.5 레디스 분산 락 사용 예제
    10.6 레디스 Sorting 구현 예제
    10.7 레디스 Pub-Sub 구현 예제
    __10.7.1 토픽과 메시지 객체
    __10.7.2 게시자 예제
    __10.7.3 구독자 예제
    __10.7.4 게시자와 구독자 테스트
    10.8 스프링 프레임워크 캐시
    __10.8.1 Cache와 CacheManager 인터페이스
    __10.8.2 캐시 애너테이션

    11장 스프링 스케줄링 태스크
    11.1 스케줄링 설정
    __11.1.1 SchedulingConfigurer를 사용한 TaskScheduler 설정
    __11.1.2 ScheduledAnnotationBeanPostProcessor와 TaskScheduler 설정
    11.2 스케줄링 태스크 정의
    __11.2.1 cron 속성과 클론 표현식
    __11.2.2 fixedDelay 속성
    __11.2.3 fixedRate 속성
    11.3 배치 서버 아키텍처
    __11.3.1 단독 배치 서버 구성
    __11.3.2. 젠킨스와 REST-API 서버군 구성
    __11.3.3 @Scheduled와 REST-API 서버군 구성

    12장 스프링 이벤트
    12.1 스프링 이벤트 장점
    12.2 사용자 정의 이벤트 처리
    12.3 비동기 사용자 정의 이벤트 처리
    12.4 @Async 애너테이션을 사용한 비동기 이벤트 처리
    12.5 @EventListener
    12.6 스프링 애플리케이션 이벤트
    12.7 트랜잭션 시점에 구독한 이벤트 처리

    부록 A 예제 코드 사용법
    A.1 예제 코드 실행하기
    __A.1.1 실행 환경 설정
    __A.1.2 예제 코드의 구조 및 실행
    A.2 도커 이미지 생성하기
    __A.2.1 도커 설치
    __A.2.2 도커 이미지 관련 명령어들
    __A.2.3 도커 컨테이너 명령어들
    __A.2.4 도커 이미지 저장소 관련 명령어들

    찾아보기

추천사

  • 기술을 온전히 잘 이해하기도 어렵지만 그 내용을 글이나 자료로 잘 담아내는 것도 상당히 어려운 일입니다. 이 책은 이 두 가지를 충분히 잘하는 저자가 자신의 경험을 담은 책입니다. 스프링에 대한 이야기부터 데이터베이스의 트랜잭션 처리, 레디스, 이벤트 처리 등 기본적으로 스프링과 스프링 부트를 쓰기 위해 알아야 할 부분을 심도 있게 담아 초보자는 물론이고 중급자까지 아우릅니다. 저 역시 기술을 잘 이해하는 사람의 설명이 얼마나 도움이 되는지 다시금 느끼고 배우게 되었습니다.

  • 저자가 2014년도에 썼던 『자바를 다루는 기술』이란 책을 재미있게 읽었고, NHN Dooray 개발실에서 함께 일할 때도 그는 기술에 대한 이해가 남달라 기술 관련 도움을 많이 주기도 했습니다. 아마도 그래서 이 글을 쓰고 있지 않을까 합니다. 이 책을 읽고 보니 역시 ‘김병부’란 생각이 들었습니다. 스프링을 익힌 주니어 개발자가 대용량 서비스를 만들기 위한 스프링 관련 도서를 추천해달라고 한다면 고민 없이 이 책을 추천하겠습니다. 이 책에는 자바와 스프링을 이용하여 마이크로서비스를 만드는 내용이 알차게 들어 있습니다. 성능을 향상시키기 위해 메모리 DB인 레디스도자주 사용하는데, 이에 대한 내용도 잘 쓰고 있습니다. 저도 그럴 테지만 여러분이 실무자라면 사무실 책상에 놓고 필요할 때마다 꺼내 보면 도움이 될 것입니다.

  • MSA는 더 이상 최신 트렌드가 아닌 서비스 개발에 필수 아키텍처 요소로 자리 잡았습니다. 기본적으로 복잡도를 요구하는 아키텍처라서 개발 팀원들의 역량이 높아야 한다는 전제 조건이 필요한데, 실무에서 만난 엔지니어들을 보면 AWS, 도커, 스프링 클라우드, 카프카 등 MSA를 위한 도구의 기본 사용법은 알고 있지만, 핵심 애플리케이션(스프링 부트)에 대한 이해와 응용력은 부족한 분들이 적지 않습니다. 이 책을 통해 MSA에 대한 현실적 고민을 해결하고, 스프링 부트에 대한 단단한 기본기와 실무적 활용 역량을 함께 갖출 수 있을 것입니다. 무엇보다 책 속에서나마 실무 경험이 풍부한 시니어 백엔드 엔지니어와의 만남이 즐겁고 유익한 시간이 되길 바랍니다.

  • 인터넷에 떠도는 프로그래머 관련 밈(Meme) 중에 ‘왜 이게 동작하지 않지?’ 혹은 ‘왜 이게 동작하지?’라는 이미지를 한 번쯤 보았으리라고 생각합니다. 개인적으로 이 이미지의 핵심은 ‘왜’라고 생각하는데, 이 책을 읽고 나면 이 ‘왜’라는 질문의 궁금증을 해결할 수 있습니다. 그만큼 웹 개발에 필요한 기초 지식부터 스프링 부트의 핵심 개념까지 충실히 다루고 있습니다. 또한 기존의 프로그래밍 관련 도서가 각 장마다 연관성이 없어 읽다 지치는 경우가 많은데, 이 책은 여행 예약 사이트 개발 과정을 책 전체에 걸쳐 다루면서 설계부터 제작까지 자세히 안내합니다. 이를 잘 응용하면 여러분의 웹 서비스 설계와 개발에 활용할 수 있을 것입니다. 특히 눈길을 끌었던 부분은 스프링 부트의 설정법부터 각종 애너테이션, 로거(Logger), JPA와 NoSQL, 스케줄러 활용까지 실무에 필요한 거의 모든 부분을 세세히 다루고 있다는 점이었습니다. 책을 읽는 내내 필자의 개발 경력을 보여 주는 노하우를 살펴볼 수 있었고, 여러분 역시 이를 잘 습득한다면 고급 개발자로 성장하는 데 큰 도움이 될 것입니다. 웹 개발 실무에서 막힘 없는 개발을 하길 원한다면 이 책을 꼭 읽어보길 바랍니다.

  • 마이크로서비스를 소개하는 책은 많지만 실무에 적용하기 위해 필요한 기술적인 내용까지 다루는 경우는 많지 않은 것 같습니다. 또한 스프링 부트를 다루는 책도 많이 있지만 주로 기본적인 활용법 위주라 기술 원리부터 실무 활용까지 전체를 아우르는 경우는 매우 드뭅니다. 이 책은 스프링 부트를 이용하여 마이크로서비스 아키텍처를 구현하는 데 필요한 기본적인 기술 원리와 개념부터 실제 적용에 필요한 세부적인 설정은 물론, MSA(마이크로서비스 아키텍처) 컴포넌트의 통합, 캐싱이나 분산 락 구현 같은 레디스의 다양한 활용법, 스케줄링과 이벤트 핸들링까지 실무에 필요한 거의 모든 내용을 다루고 있습니다. 특히 이 책에는 MSA 컴포넌트를 개발하며 쌓아 온 저자의 오랜 실무 경험과 노하우가 고스란히 담겨 있어 마이크로서비스를 실무에 도입하려는 분에게 많은 도움이 될 것입니다.

  • 선배들이 만들어 준 템플릿을 복사, 붙여넣기만 하면서 코드 한 줄 한 줄이 어떤 의미인지 알지 못한 채 개발해 온 분들이라면 이 책을 꼭 읽어 보라고 이야기하고 싶습니다. 단순한 구현 방법에 대한 설명만이 아닌 저자의 20년 가까운 경험이 책 구석구석에 녹아 있습니다. 테스트 코드를 작성하지 않고 스프링 부트 기반으로 개발하는 분도 꼭 읽어 보아야 합니다.

출판사 서평

마이크로서비스 도입에 필요한
스프링 부트 핵심 가이드!

마이크로서비스 도입에 필요한 스프링 부트 사용법을 확실하게 배우자!
개발과 운영이 까다로운 마이크로서비스를 올바르게 이해하고, 마이크로서비스 애플리케이션을 개발할 때 필요한 스프링 부트에 집중해서 설명한다. 스프링 부트의 자동 설정 기능부터 JPA, REST-API, 영속성 프레임워크와 레디스, 그리고 스프링 프레임워크에서 제공하는 스케줄링 기능과 스프링 이벤트를 사용하는 방법까지 순서대로 들여다보면서 스프링 애플리케이션을 보다 완성도 있게 개발할 수 있다.

400개의 길고 짧은 예제를 통해 실전 감각을 올리자!
이 책에서는 실무에서 서비스를 개발하면서 부딪힐 수 있는 여러 상황들을 예제로 설명한다. 400개의 길고 짧은 예제를 통해 ‘스프링 투어’라는 가상의 여행 예약 서비스를 조금씩 발전시키면서 여러 서비스가 결합된 서비스로의 전환 과정을 보여준다. 이 과정 안에서 스프링 부트로 마이크로서비스 컴포넌트를 개발하는 방법을 보다 쉽게 이해할 수 있을 것이다.

기본정보

상품정보 테이블로 ISBN, 발행(출시)일자 , 쪽수, 크기, 총권수을(를) 나타낸 표입니다.
ISBN 9791140702121
발행(출시)일자 2022년 11월 18일
쪽수 768쪽
크기
183 * 235 * 38 mm / 1502 g
총권수 1권

Klover

구매 후 리뷰 작성 시, e교환권 200원 적립

10점 중 5점
/쉬웠어요
MSA는 찍먹 대다수가 Springboot 기초 내용임
10점 중 10점
/추천해요
도움이 많이 됩니다 추천추천
10점 중 10점
/도움돼요
정말로 도움됩니다.

문장수집 (1)

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여주는 교보문고의 새로운 서비스입니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 "좋아요“ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보 없이 삭제될 수 있습니다.
리워드 안내
구매 후 90일 이내에 문장수집 작성 시 e교환권 100원을 적립해드립니다.
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)

구매 후 리뷰 작성 시, e교환권 100원 적립

MSA 컴포넌트
스프링 부트로 개발하는 MSA 컴포넌트

교환/반품/품절 안내

상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

TOP