간편결제, 신용카드 청구할인
카카오페이 3,000원
(카카오페이 결제시 최대할인 3천원 / 5만원 이상 결제, 기간 중 1회)
삼성카드 6% (21,150원)
(삼성카드 6% 청구할인)
인터파크 롯데카드 5% (21,380원)
(최대할인 10만원 / 전월실적 40만원)
북피니언 롯데카드 30% (15,750원)
(최대할인 3만원 / 3만원 이상 결제)
NH쇼핑&인터파크카드 20% (18,000원)
(최대할인 4만원 / 2만원 이상 결제)
Close

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

원제 : Netty in Action
소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 1,042
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

25,000원

  • 22,500 (10%할인)

    1,250P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 출고완료 후 14일 이내 마이페이지에서 적립받기한 경우만 적립됩니다.
  • 추가혜택
    배송정보
    주문수량
    감소 증가
    • 이벤트/기획전

    • 연관도서(5)

    • 사은품(9)

    책소개

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

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

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

    추천사

    "네티에 대한 최초의 책... 고성능, 저지연 네트워크 애플리케이션을 개발하는 방법을 배울 수 있다."
    - 이희승 / 네티 창시자

    "기본 개념부터 최상의 방법까지 모든 것을 해결하는 고성능 자바 네트워크 스택"
    - 크리스찬 바하 / 그리드 트레이딩 플랫폼

    "네티의 모든 것을 활용하는 방법을 설명하는 가장 자세한 내용"
    - 위르겐 호프만 / 레드햇

    "네티 프레임워크에 대한 탁월한 안내서. 자바로 고성능 네트워크 입출력을 다루는 모든 개발자에게 추천하고 싶은 책"
    - 예스틴 존슨 / 임팩트 라디어스

    목차

    [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계층 아키텍처로 감당할 수 없는 수준이 됨에 따라 이제는 애플리케이션을 여러 조각으로 나눠서 다수의 시스템으로 구성된 대규모 클러스터로 분산해야 하는 상황에 이르렀다.

    이러한 대규모 분산 시스템을 운영하려면 운영 비용과 대기 시간이라는 두 가지 흥미로운 문제를 고려해야 한다. 단일 노드의 성능을 30% 또는 100% 이상으로 개선하면 얼마나 많은 시스템을 줄일 수 있을까? 단일 웹 브라우저에서 다수의 시스템을 통해 십여 개의 내부 원격 프로시저 호출을 트리거할 때 최적의 지연 시간을 달성하려면 어떻게 해야 할까?

    네티의 핵심 기여자 중 한 명인 노먼 마우러는 네티 프로젝트에 대한 최초의 책 [네티 인 액션]에서 네티로 고성능 저대기 시간 네트워크 애플리케이션을 구축하는 방법으로 이러한 문제의 해결책을 제시한다.

    이 책을 마칠 때쯤에는 간소한 HTTP 서버부터 고도의 세부 설정이 가능한 RPC 서버까지 거의 모든 네트워크 애플리케이션을 구축할 수 있게 될 것이다.

    무엇보다 『네티 인 액션』의 놀라운 점은 이 책이 네티의 구석구석을 모두 아는 핵심 기여자가 집필했다는 것만이 아니라 트위터, 페이스북, 파이어베이스 등 네티를 실무 시스템에 활용하고 있는 여러 기업의 실제 사례 연구를 담고 있다는 점이다. 이러한 사례 연구를 통해 이들 기업에서 네티 기반 애플리케이션의 역량을 최대한으로 끌어올리는 데 사용한 방법을 이해할 수 있게 될 것이다.

    2001년 필자의 학부 시절 개인 프로젝트로 세상에 선보인 네티 (http://t.motd.kr/ko/archives/1930)는 프로젝트(http://netty.io/community.html)에 참여하는 노먼과 같은 열정적인 기여자들의 값진 노력에 힘입어 지금 이 순간에도 활발한 생명력을 보여주고 있다. 이 책이 '네트워크 프로그래밍의 미래를 향한' 길에 동참하도록 많은 독자에게 동기를 부여하고 프로젝트의 새로운 측면에 활기를 불어넣기를 기대한다.
    - 이희승 / 네티 창시자
    (/ 본문 중에서)

    저자소개

    노먼 마우러(Norman Maurer) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

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

    마빈 알렌 울프탈 (Marvin Allen Wolfthal) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

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

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    2005년부터 번역 회사에서 언어 전문가로 일하다가 독립한 후 현재는 IT 전문 번역가로 일하고 있다. 10여 년 동안 수백 건의 소프트웨어 현지화와 개발자 웹사이트 한글화 프로젝트를 진행했으며, 지금은 IT 전문 서적을 번역하는 일에 집중하고 있다. [리액트 디자인 패턴과 모범 사례](에이콘, 2016) [Unity 5.x By Example](에이콘, 2016) [유니티 5 메카님 캐릭터 애니메이션](에이콘, 2016), [네티 인 액션](위키북스, 2016), [유니티와 C#으로 배우는 게임 개발 교과서](위키북스, 2015) 등을 번역했다.

    리뷰

    0.0 (총 0건)

    구매 후 리뷰 작성 시, 북피니언 지수 최대 600점

    리뷰쓰기

    기대평

    작성시 유의사항

    평점
    0/200자
    등록하기

    기대평

    10.0

    교환/환불

    교환/환불 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

    교환/환불 가능 기간

    고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

    교환/환불 비용

    고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

    교환/환불 불가사유

    반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
    배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

    소비자 피해보상

    소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
    교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

    기타

    도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

    배송안내

    • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

    • 배송비

    도서(중고도서 포함) 구매

    2,000원 (1만원이상 구매 시 무료배송)

    음반/DVD/잡지/만화 구매

    2,000원 (2만원이상 구매 시 무료배송)

    도서와 음반/DVD/잡지/만화/
    중고직배송상품을 함께 구매

    2,000원 (1만원이상 구매 시 무료배송)

    업체직접배송상품 구매

    업체별 상이한 배송비 적용