쿼커스 쿡북 (쿠버네티스를 위한 네이티브 자바 솔루션)

쿼커스 쿡북 (쿠버네티스를 위한 네이티브 자바 솔루션)

$35.00
Description
쿼커스를 쉽고 빠르게 익히는 145가지 레시피
쿼커스는 쿠버네티스에 최적화된 클라우드 네이티브 프레임워크다. 스프링, 하이버네이트, 이클립스 마이크로프로파일, 쿠버네티스, 아파치 캐멜과 이클립스 Vert.x와 같이 익숙한 라이브러리와 기술을 기반으로 네이티브 응용프로그램을 만든다.

이 책에서 제시하는 145가지 레시피는 쿼커스를 시작하는 방법부터 자바 응용프로그램 개발까지 단계별로 보여준다. 실무에서 마주할 수 있는 레시피를 따라가다 보면 자바 에코 시스템에서 쿼커스가 작동하는 방식을 이해하고, 프레임워크를 특성에 맞게 조정하는 방법을 익힐 수 있다.

● 쿼커스 개발 모드 익히기
● 카프카와의 상호작용
● 템플릿, 스케줄링, 오픈API 등 부가 기능 추가하기
● 쿠버네티스와 통합 및 배포 방법
● 네이티브 쿼커스 응용프로그램 테스트 방법
저자

알렉스소토부에노

(AlexSotoBueno)
1990년대초에처음구입한컴퓨터를통해소프트웨어에매료되었다.이모든것은퀵베이직의고릴라게임QbasicGorillas과지렁이게임QbasicNibbles에서시작되었다.게임의소스코드를발견한후에는완전히빠져들었으며,앞으로무엇을하고싶은지정확히알수있었다!처음에는베이직을배웠으며,얼마지나지않아『TeachYourselfJavain21Days』를선택했다.고등학교와대학교에서는자바및C/C++로기초를향상시켰다.‘닷컴’열풍이터진시기에꿈꾸던레드햇에입사했다.대부분자바기반의많은소프트웨어프로젝트를수행했으며수년동안웹작업을담당했다.다른사람들이생산적으로일할수있도록도울수있어서매우기뻐한다.전세계의다양한컨퍼런스와유타의지역JUG무대에서그를볼수있다.

목차

CHAPTER1쿼커스소개
1.1개발자친화적
1.2쿠버네티스와통합
1.3메모리와첫응답시간
1.4쿼커스의흐름

CHAPTER2뼈대잡기
2.1메이븐으로쿼커스뼈대잡기
2.2그레이들로쿼커스프로젝트뼈대잡기
2.3쿼커스코딩시작웹페이지에서쿼커스프로젝트뼈대잡기
2.4VSCode로쿼커스프로젝트뼈대잡기
2.5개발자모드에서라이브리로드
2.6정적자원제공

CHAPTER3REST서비스개발하기
3.1단순한RESTAPI종단점생성하기
3.2요청인자추출하기
3.3HTTP응답상태코드사용하기
3.4HTTP메서드와바인딩하기
3.5CORS활성화하기
3.7HTTP요청가로채기
3.8SSL로안전하게연결하기

CHAPTER4설정
4.1사용자정의속성으로응용프로그램설정하기
4.2설정속성에프로그램적으로접근하기
4.3설정값을외부에서덮어쓰기
4.4프로파일설정하기
4.5로거설정변경하기
4.6응용프로그램로그추가하기
4.7고급로깅
4.8사용자정의프로파일설정하기
4.9사용자정의소스생성하기
4.10사용자정의변환기생성하기
4.11설정값을그룹화하기
4.12설정값검증하기

CHAPTER5프로그래밍모델
5.1JSON마샬링/언마샬링
5.2XML마샬링/언마샬링
5.3입출력값검증하기
5.4사용자정의유효성검증하기
5.5프로그램으로객체검증하기
5.6의존성주입하기
5.7팩토리생성하기
5.8객체생명주기이벤트실행하기
5.9응용프로그램생명주기이벤트실행하기
5.10이름을가진한정자사용하기
5.11사용자정의한정자사용하기
5.12애너테이션으로제한설정하기
5.13인터셉터생성하기
5.14행동테스트작성하기
5.15단위테스트작성하기
5.16목객체생성하기
5.17모키토를활용해목객체생성하기
5.18메타애너테이션으로다수의애너테이션을그룹화하기
5.19테스트의전/후에코드실행하기
5.20네이티브실행으로테스트하기

CHAPTER6쿼커스응용프로그램의패키징
6.1명령모드에서실행하기
6.2실행형JAR파일생성하기
6.3우버JAR패키징하기
6.4네이티브실행빌드하기
6.5JAR파일을위한도커컨테이너빌드하기
6.6네이티브파일을위한도커컨테이너빌드하기
6.7네이티브SSL응용프로그램을빌드하고도커화하기

CHAPTER7영속성
7.1데이터소스정의하기
7.2다수의데이터소스사용하기
7.3데이터소스헬스체크추가하기
7.4트랜잭션의경계를선언적으로정의하기
7.5트랜잭션문맥설정하기
7.6프로그램으로트랜잭션제어
7.7트랜잭션제한시간을설정하거나변경하기
7.8persistence.xml설정하기
7.9persistence.xml없이설정하기
7.10다른JAR에있는엔티티사용하기
7.11파나쉬로데이터영속성다루기
7.12파나쉬의listAll메서드로모든엔티티의인스턴스찾기
7.13파나쉬의findById메서드로개별엔티티찾기
7.14파나쉬의find와list메서드로엔티티찾기
7.15파나쉬의count메서드를사용해엔티티의개수얻기
7.16파나쉬의page메서드를사용해엔티티목록을페이지로표시하기
7.17파나쉬의stream메서드로결과를스트림으로사용하기
7.18파나쉬엔티티테스트하기
7.19데이터접근객체혹은저장소패턴사용하기
7.20아마존다이나모DB사용하기
7.21몽고DB로작업하기
7.22몽고DB로파나쉬사용하기
7.23쿼커스와Neo4j사용하기
7.24Flyway로시작하기
7.25Flyway를프로그램으로사용하기

CHAPTER8장애허용
8.1자동재시도구현하기
8.2제한시간구현하기
8.3격벽패턴으로과부하피하기
8.4회로차단기패턴으로불필요한호출회피하기
8.5결함허용비활성화하기

CHAPTER9관찰력
9.1자동헬스체크사용하기
9.2사용자정의헬스체크생성하기
9.3메트릭노출하기
9.4메트릭생성하기
9.5분산추적사용하기
9.6사용자정의분산추적

CHAPTER10쿠버네티스통합
10.1컨테이너이미지빌드와푸시
10.2쿠버네티스자원생성하기
10.3헬스체크를포함해쿠버네티스자원을생성하기
10.4쿠버네티스에서비스배포하기
10.5오픈시프트에서비스배포하기
10.6컨테이너이미지를자동으로빌드하고배포하기
10.7쿠버네티스로부터응용프로그램설정하기
10.8설정확장으로쿠버네티스로부터응용프로그램설정하기
10.9쿠버네티스클러스터와프로그램으로상호작용하기
10.10쿠버네티스클라이언트상호작용을테스트하기
10.11쿠버네티스오퍼레이터구현하기
10.12Knative로서버리스워크로드를배포하고관리하기

CHAPTER11인증과권한
11.1쿼커스보안기본
11.2엘리트론속성파일설정으로인증과권한
11.3엘리트론보안JDBC설정으로인증과권한
11.4마이크로프로파일JWT로권한
11.5OpenIDConnect를활용한권한과인증
11.6OpenIDConnect로웹자원보호하기

CHAPTER12응용프로그램시크릿관리
12.1쿠버네티스시크릿을사용한데이터저장
12.2볼트로설정시크릿을안전하게보관하기
12.3서비스로서의암호화
12.4시크릿으로데이터베이스비밀번호생성하기
12.5볼트쿠버네티스인증으로서비스인증하기

CHAPTER13쿼커스REST클라이언트
13.1JAX-RS웹클라이언트사용하기
13.2마이크로프로파일REST클라이언트사용하기
13.3CRUD클라이언트구현하기
13.4헤더조작하기
13.5REST클라이언트에서멀티파트메시지사용
13.6REST클라이언트에SSL설정하기

CHAPTER14스프링API로쿼커스응용프로그램개발하기
14.1스프링의존성주입사용하기
14.2스프링웹사용하기
14.3스프링데이터JPA사용하기
14.4스프링보안사용하기
14.5스프링부트속성사용하기

CHAPTER15리액티브프로그래밍모델로개발하기
15.1비동기HTTP종단점생성하기
15.2데이터를비동기스트림하기
15.3메시징으로컴포넌트디커플링하기
15.4아파치카프카메시지에반응하기
15.5아파치카프카로메시지보내기
15.6카프카안과밖으로POJO를마샬링하기
15.7카프카스트림즈API사용하기
15.8쿼커스로AMQP사용하기
15.9MQTT사용하기
15.10리액티브SQL기반의쿼리하기
15.11리액티브SQL클라이언트를사용해삽입하기
15.12리액티브몽고DB클라이언트사용하기
15.13리액티브Neo4j클라이언트사용하기

CHAPTER16쿼커스부가기능
16.1큐트템플릿엔진으로템플릿생성하기
16.2큐트를사용해HTML출력
16.3큐트템플릿의위치변경하기
16.4큐트데이터클래스확장하기
16.5OpenAPI로종단점기술하기
16.6OpenAPI명세를커스터마이징하기
16.7동기방식으로이메일을보내기
16.8리액티브하게이메일보내기
16.9스케줄작업생성하기
16.10응용프로그램데이터캐싱사용하기

출판사 서평

'SupersonicSubatomicJava'쿼커스의세계에오신걸환영합니다.

2018년부터시작된쿼커스는‘초음속(supersonic)의원자보다작은자바(subatomicJAVA)’를지향하며그이름만큼빠르게발전하고있다.원문에있는예제를최신버전(1.11.3)으로변경하고서문을쓰고있는시점에다음버전이나온다는소식을접할정도이다.

이책의매력은짧게핵심에집중한다는점이다.쿼커스의전반적인주제에대해빠르게기능을확인할수있는다수의예제코드를제공한다.단순한hello출력부터그랄VM을활용하여네이티브실행파일을빌드한다.같은소스코드로쿠버네티스에배포한다.하나씩읽고따라하다보면자연스럽게쿼커스의강점을배울수있다.

- 옮긴이의글중에서-