본문내용 바로가기
MD의선택 이벤트 무료배송

네티 인 액션 Netty를 이용한 자바 기반의 고성능 서버 & 클라이언트 개발

위키북스 시스템 & 네트워크 시리즈 4
노먼 마우러 , 마빈 알렌 울프탈 지음 | 최민석 옮김 | 위키북스 | 2016년 04월 15일 출간
  • 정가 : 25,000원
    판매가 : 22,500 [10%↓ 2,500원 할인]
  • 제휴할인가 : 16,870 교보-롯데카드 최대 25% 청구할인 카드/포인트 안내
  • 통합포인트 : 1,250 적립 [5% 적립]
  • 추가혜택 :
    naver네이버페이 결제 시 무조건 1% 추가 적립 payco페이코 결제 시 최대 1만원 적립 okcashbag 실 결제 금액의 0.5% 적립 안내
  • 배송비 : 무료 배송비 안내
  • 도착예정일 : 서울특별시 종로구 세종대로 기준 지역변경
    당일배송 지금 주문하면 오늘(23일,토) 도착 예정 도착 예정일 안내
  • 바로드림 : 인터넷으로 주문하고 영업점에서 직접 수령 안내
인터넷교보문고 20주년 특별선물 증정
닫기
  • 꼬마 흡혈귀 머그컵 증정
  • 가격은 빼고, 혜택은 곱하고 2017년 2학기 대학교재전
  • 유아/어린이/가정육아&요리 신학기 추천도서
  • 14회 책과함께 KBS 한국어능력시험
  • 유아/어린이/가정육아 이달의 기대신간
  • 인터넷교보문고 20주년 생일파티 스무살 인교
  • OO을 잘 아는 세 남자
  • 추천도서 1권 투표, 매일 선착순 1천명 1천원 e-교환권 증정
  • 추석선물 이벤트
  • 비즈앤굿즈

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

  • #리드잇 페이스북 페이지 팔로우 하시고, 신간소식 빠르게 받아보..
    2017.06.22 ~ 2025.07.31
  • 대표 IT 컴퍼니 지원자격에 맞춰 준비하자
    06. 21 ~ 12. 31
  • 설문참여 시 매월 5명 추첨통해 선물을 드립니다.
    10. 14 ~ 12. 31
상품상세정보
ISBN 9791158390327(1158390327)
쪽수 336쪽
크기 188 * 240 * 19 mm /778g 판형알림
이 책의 원서 Netty in Action/Norman Maurer

책소개

이 책이 속한 분야

네티는 복잡한 네트워킹, 멀티스레드, 동시성을 관리하는 자바 기반 네트워킹 프레임워크로서, 반복적인 저수준 코드를 내부로 감춤으로써 비즈니스 논리를 분리하고 쉽게 재사용할 수 있게 해준다. 네티를 도입하면 사용하기 쉬운 API를 활용해 애플리케이션의 고유한 논리를 작성하는 데만 집중할 수 있다.

『네티 인 액션』은 네티 프레임워크를 소개하고 자바 네트워크 애플리케이션에 통합하는 방법을 설명하며, 저수준 API를 직접 다루지 않고도 확장성이 우수한 애플리케이션을 개발하는 방법을 다룬다. 또한 다양한 예제를 통해 비동기식 네트워킹 개발을 위한 사고방식을 소개하고 대규모 네트워크 애플리케이션을 개발하는 최적의 방법을 익힐 수 있게 도와준다. 이 책은 자바와 기본 네트워크 인프라에 대한 경험이 있는 독자에게 적합하다.

저자소개

저자 : 노먼 마우러

저자 노먼 마우러 (Norman Maurer)는 네티의 핵심 개발자 중 한 명으로서, 아파치 소프트웨어 재단의 회원이며, 여러 해 동안 다양한 오픈소스 프로젝트에 기여자로 활약해왔다. 현재 애플에서 선임 소프트웨어 엔지니어로 근무하면서 iCloud 팀의 네티와 여러 네트워크 관련 프로젝트를 담당하고 있다.

저자 : 마빈 알렌 울프탈

저자 마빈 알렌 울프탈 (Marvin Allen Wolfthal)은 여러 해 동안 다양한 소프트웨어 개발 분야에서 개발자, 설계자, 강사, 저자로 활약했다. 초창기부터 자바를 이용해 개발을 해왔고 썬마이크로시스템즈에서 분산 객체 기술을 홍보하기 위해 개발한 최초의 프로그램 개발에도 참여했다. 또한 썬 에듀케이션 센터에서 C++, 자바, CORBA를 이용하는 최초의 크로스 랭귀지 프로그래밍 강좌를 개설하고 운영하기도 했다. 현재는 델 서비스의 컨설턴트로서 자바 업계에서 개발된 방법론을 엔터프라이즈 컴퓨팅의 여러 영역에 도입하는 데 집중하고 있다.

역자 : 최민석

역자 최민석은 번역회사에서 언어전문가로 일하다 뜻하는 바를 이루기 위해 프리랜서로 독립해서 현재는 전문 번역가로 일하고 있다. 주로 IT 관련 소프트웨어의 현지화와 개발자 웹 사이트 관련 프로젝트를 진행하고 있으며 앞으로 개발자 서적 분야에서 작은 변화를 일으키고 싶다는 소박한 소망을 하고 있다. 번역가의 고민은 독자의 고민과 반비례한다는 믿음으로 오늘도 기꺼이 고민할 준비가 돼 있다. 번역한 책으로는 『유니티와 C#으로 배우는 게임 개발 교과서』 『게임 디자인 워크숍』 『시작하세요! 스프링 4 프로그래밍』 『자바 웹 개발 완벽 가이드』 『엔터프라이즈 애플리케이션 아키텍처 패턴』이 있다.

목차

[01부] 네티 개념과 아키텍처

▣ 01장: 네티 - 비동기식 이벤트 기반 네트워킹 프레임워크

1.1 자바의 네트워킹
___1.1.1 자바 NIO
___1.1.2 셀렉터
1.2 네티 소개
___1.2.1 네티는 누가 사용할까?
___1.2.2 비동기식 이벤트 기반 네트워킹
1.3 네티의 핵심 컴포넌트
___1.3.1 Channel
___1.3.2 콜백
___1.3.3 Future
___1.3.4 이벤트와 핸들러
___1.3.5 내용 정리
1.4 요약

▣ 02장: 첫 번째 네티 애플리케이션

2.1 개발 환경 설정
___2.1.1 JDK 내려받기와 설치
___2.1.2 IDE 내려받기와 설치
___2.1.3 아파치 메이븐 내려받기와 설치
___2.1.4 툴셋 구성
2.2 네티 클라이언트/서버 개요
2.3 Echo 서버 만들기
___2.3.1 ChannelHandler와 비즈니스 논리
___2.3.2 서버 부트스트랩
2.4 Echo 클라이언트 만들기
___2.4.1 ChannelHandler를 이용한 클라이언트 논리 구현
___2.4.2 클라이언트 부트스트랩
2.5 Echo 서버와 클라이언트의 빌드와 실행
___2.5.1 빌드
___2.5.2 Echo 서버와 클라이언트 실행
2.6 요약

▣ 03장: 네티 컴포넌트와 설계

3.1 Channel, EventLoop, ChannelFuture
___3.1.1 Channel 인터페이스
___3.1.2 EventLoop 인터페이스
___3.1.3 ChannelFuture 인터페이스
3.2 ChannelHandler와 ChannelPipeline
___3.2.1 ChannelHandler 인터페이스
___3.2.2 ChannelPipeline 인터페이스
___3.2.3 ChannelHandler에 대한 고찰
___3.2.4 인코더와 디코더
___3.2.5 추상 클래스 SimpleChannelInboundHandler
3.3 부트스트랩
3.4 요약

▣ 04장: 전송

4.1 사례 연구: 전송 마이그레이션
___4.1.1 네티 없이 OIO와 NIO 이용
___4.1.2 네티와 함께 OIO와 NIO 이용
___4.1.3 논블로킹 네티 버전
4.2 전송 API
4.3 포함된 전송
___4.3.1 NIO: 논블로킹 입출력
___4.3.2 Epoll: 리눅스용 네이티브 논블로킹 전송
___4.3.3 OIO: 기존 블로킹 입출력
___4.3.4 JVM 내부 통신용 로컬 전송
___4.3.5 임베디드 전송
4.4 전송 사용 사례
4.5 요약

▣ 05장: ByteBuf

5.1 ByteBuf API
5.2 ByteBuf 클래스: 네티의 데이터 컨테이너
___5.2.1 작동 방식
___5.2.2 ByteBuf 사용 패턴
5.3 바이트 수준 작업
___5.3.1 임의 접근 인덱싱
___5.3.2 순차 접근 인덱싱
___5.3.3 폐기할 수 있는 바이트
___5.3.4 읽을 수 있는 바이트
___5.3.5 기록할 수 있는 바이트
___5.3.6 인덱스 관리
___5.3.7 검색 작업
___5.3.8 파생 버퍼
___5.3.9 읽기/쓰기 작업
5.3.10 추가 작업
5.4 ByteBufHolder 인터페이스
5.5 ByteBuf 할당
___5.5.1 주문식 할당을 위한 ByteBufAllocator 인터페이스
___5.5.2 풀링되지 않는 버퍼
___5.5.3 ByteBufUtil 클래스
5.6 참조 카운팅
5.7 요약

▣ 06장: ChannelHandler와 ChannelPipeline

6.1 ChannelHandler 계층
___6.1.1 Channel 수명주기
___6.1.2 ChannelHandler 수명주기
___6.1.3 ChannelInboundHandler 인터페이스
___6.1.4 ChannelOutboundHandler 인터페이스
___6.1.5 ChannelHandler 어댑터
___6.1.6 리소스 관리
6.2 ChannelPipeline 인터페이스
___6.2.1 ChannelPipeline 수정
___6.2.2 이벤트 생성
6.3 ChannelHandlerContext 인터페이스
___6.3.1 ChannelHandlerContext 이용
___6.3.2 ChannelHandler와 ChannelHandlerContext의 고급 활용
6.4 예외 처리
___6.4.1 인바운드 예외 처리
___6.4.2 아웃바운드 예외 처리
6.5 요약

▣ 07장: EventLoop와 스레딩 모델

7.1 스레딩 모델의 개요
7.2 EventLoop 인터페이스
___7.2.1 네티 4의 입출력과 이벤트 처리
___7.2.2 네티 3의 입출력 작업
7.3 작업 스케줄링
___7.3.1 JDK 스케줄링 API
___7.3.2 EventLoop를 이용한 작업 스케줄링
7.4 구현 세부 사항
___7.4.1 스레드 관리
___7.4.2 EventLoop와 스레드 할당
7.5 요약

▣ 08장: 부트스트랩

8.1 부트스트랩 클래스
8.2 비연결 프로토콜과 클라이언트 부트스트랩
___8.2.1 클라이언트 부트스트랩
___8.2.2 Channel과 EventLoopGroup 호환성
8.3 서버 부트스트랩
___8.3.1 ServerBootstrap 클래스
___8.3.2 서버 부트스트랩
8.4 채널에서 클라이언트 부트스트랩
8.5 부트스트랩 중 여러 ChannelHandler 추가
8.6 네티 ChannelOption과 특성 이용
8.7 DatagramChannel 부트스트랩
8.8 종료
8.9 요약

▣ 09장: 단위 테스트

9.1 EmbeddedChannel 개요
9.2 EmbeddedChannel을
ChannelHandler 테스트
___9.2.1 인바운드 메시지 테스트
___9.2.2 아웃바운드 메시지 테스트
9.3 예외 처리 테스트
9.4 요약

[02부] 코덱

▣ 10장: 코덱 프레임워크

10.1 코덱이란?
10.2 디코더
___10.2.1 ByteToMessageDecoder 추상 클래스
___10.2.2 ReplayingDecoder 추상 클래스
___10.2.3 MessageToMessageDecoder 추상 클래스
___10.2.4 TooLongFrameException 클래스
10.3 인코더
___10.2.3 MessageToByteEncoder 추상 클래스
___10.2.3 MessageToMessageEncoder 추상 클래스
10.4 추상 코덱 클래스
___10.4.1 ByteToMessageCodec 추상 클래스
___10.2.3 MessageToMessageCodec 추상 클래스
___10.4.3 CombinedChannelDuplexHandler 클래스
10.5 요약

▣ 11장: 네티에서 제공하는 ChannelHandler와 코덱

11.1 SSL/TLS를 이용한 네티 애플리케이션 보안
11.2 네티 HTTP/HTTPS 애플리케이션 개발
___11.2.1 HTTP 디코더, 인코더, 코덱
___11.2.2 HTTP 메시지 집합체
___11.2.3 HTTP 압축
___11.2.4 HTTPS 이용
___11.2.5 웹소켓
11.3 유휴 연결과 시간 만료
11.4 구분 기호 및 길이 기반 프로토콜의 디코딩
___11.4.1 구분 기호 프로토콜
___11.4.2 길이 기반 프로토콜
11.5 대용량 데이터 기록
11.6 데이터 직렬화
___11.6.1 JDK 직렬화
___11.6.2 JBoss 마셜링을 이용한 직렬화
___11.6.3 프로토콜 버퍼를 통한 직렬화
11.7 요약

[03부] 네트워크 프로토콜

▣ 12장: 웹소켓

12.1 웹소켓 소개
12.2 예제 웹소켓 애플리케이션
12.3 웹소켓 지원 추가
___12.3.1 HTTP 요청 처리
___12.3.2 웹소켓 프레임 처리
___12.3.3 ChannelPipeline 초기화
___12.3.4 부트스트랩
12.4 애플리케이션 테스트
___12.4.1 암호화
12.5 요약

▣ 13장: UDP를 이용한 이벤트 브로드캐스팅

13.1 UDP 기본 사항
13.2 UDP 브로드캐스트
13.3 UDP 예제 애플리케이션
13.4 메시지 POJO: LogEvent
13.5 브로드캐스터 작성
13.6 모니터 작성
13.7 LogEventBroadcaster와 LogEventMonitor 실행
13.8 요약

[04부] 사례 연구

▣ 14장: 사례 연구 1부

14.1 드로플러: 모바일 서비스 구축
___14.1.1 초기 상황
___14.1.2 드로플러의 작동 방식
___14.1.3 빠른 업로드 환경 구축
___14.1.4 기술 스택
___14.1.5 성능
___14.1.6 요약: 든든한 도우미
14.2 파이어베이스: 실시간 데이터 동기화 서비스
___14.2.1 파이어베이스 아키텍처
___14.2.2 롱 폴링
___14.2.3 HTTP 1.1 keep-alive와 파이프라인
___14.2.4 SslHandler 제어
___14.2.5 파이어베이스 요약
14.3 어번 에어십: 모바일 서비스 구축
___14.3.1 모바일 메시징의 기본
___14.3.2 타사 푸시 전달
___14.3.3 이진 프로토콜
___14.3.4 직접 장치 전송
___14.3.5 네티의 탁월한 동시 연결 지원 능력
___14.3.6 요약: 방화벽의 경계를 넘어
14.4 요약

▣ 15장: 사례 연구 2부

15.1 페이스북에서의 네티: 니프티와 스위프트
___15.1.1 스리프트란?
___15.1.2 네티를 이용한 자바 스리프트의 상태 개선
___15.1.3 니프티 서버 설계
___15.1.4 니프티 비동기 클라이언트 설계
___15.1.5 스위프트: 자바 스리프트 서비스를 구축하는 더 빠른 방법
___15.1.6 결과
___15.1.7 페이스북 요약
15.2 트위터에서의 네티: 피네이글
___15.2.1 트위터의 성장통
___15.2.2 피네이글의 탄생
___15.2.3 피네이글의 작동 방식
___15.2.4 피네이글의 추상화
___15.2.5 오류 관리
___15.2.6 서비스 구성
___15.2.7 미래: 네티
___15.2.8 트위터 요약
15.3 요약

[부록] 메이븐 소개

A.1 메이븐이란?
___A.1.1 메이븐 설치와 구성
___A.1.2 메이븐의 기본 개념
A.2 POM 예제
___A.2.1 프로젝트 POM
___A.2.2 POM 상속과 집계
A.3 메이븐 명령줄
A.4 요약

추천사

이희승(네티 창시자)

“네티에 대한 최초의 책... 고성능, 저지연 네트워크 애플리케이션을 개발하는 방법을 배울 수 있다.”

크리스찬 바하(그리드 트레이딩 플랫폼)

“기본 개념부터 최상의 방법까지 모든 것을 해결하는 고성능 자바 네트워크 스택”

위르겐 호프만(레드햇)

“네티의 모든 것을 활용하는 방법을 설명하는 가장 자세한 내용”

예스틴 존슨(임팩트 라디어스)

“네티 프레임워크에 대한 탁월한 안내서. 자바로 고성능 네트워크 입출력을 다루는 모든 개발자에게 추천하고 싶은 책”

책 속으로

웹 애플리케이션 서버를 이용하면 HTTP나 RPC 서버를 제작하는 방법을 배울 필요가 없는 날이 온다고 생각하던 때가 있었다. 아쉽게도 이런 희망은 오래 지속되지 않았다. 우리가 다뤄야 하는 기능 변경의 양과 속도가 날로 증가하면서 기존의 3계층 아키텍처로 감당할 수 없는 수준이 됨에 따라 이제는 애플리케이션을 여러 조각으로 나눠서 다수의 시스템으로 구성된 대규모 클러스터로 분산해야 하는 상황에 이르렀다.

이러한 대규모 분산 시스템을 운영하려면 운영 비용과 대기 시간이라는 두 가지 흥미로운 문제를 고려해야 한다. 단일 노드의 ... 더보기

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면 통합포인트를 드립니다.
결제 90일 이내 작성 시 300원 / 발송 후 5일 이내 작성시 400원 / 이 상품의 첫 리뷰 작성 시 500원
(포인트 적립은 작성 후 다음 날 혹은 해당 도서 배송 출발 후 익일에 적립됩니다.
외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외)
안내
  • 해당도서의 리뷰가 없습니다.

Klover 평점/리뷰 (0)

교환/반품/품절안내

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

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

  • 사이토 고키
    21,600원
  • 한기준
    27,900원
  • 박응용
    16,920원
  • 김영우
    18,000원
  • 쿠지라 히코우즈쿠에
    27,000원
더보기+

이 분야의 신간

  • 허팝
    13,500원
  • Blizzard Entert...
    22,500원
  • 권용진
    14,400원
  • 이난주
    18,000원
  • 닉 맥클루어
    32,400원
더보기+

바로가기

  • 우측 확장형 배너 2

최근 본 상품