Java 43

[Netwok/Netty]07. Netty 구축을 위한 beans(3) - ChannelPipleline

[Network/Netty]07. Netty 구축을 위한 beans(3) - ChannelPipeline(출처 : http://netty.io/4.0/api/io/netty/channel/ChannelPipeline.html http://ash84.net/2013/03/08/exs4j-netty-channelpipeline--ec-97-90--eb-8c-80-ed-95-9c--ec-9d-b4-ed-95-b4/) 1. ChannelPipeline public abstract interface ChannelPipline extends Iterable ChannelHandler들을 모아놓은 일련의 목록. 이벤트가 발생됨에 따라 내부에 등록된 ChannelHandler들을 동작하기 위한 관리자라고 볼 수 있다...

Java/Netty 2017.10.22

[Netwok/Netty]06. Netty 구축을 위한 beans(2) - ServerBootstrap

[Netwok/Netty]06. Netty 구축을 위한 beans(1) - ServerBootstrap(출처 : http://javafactory.tistory.com/1382)1. Beanspublic abstract class AbstractBootstrap bootstrab의 사전적 의미는 한 번 시작하면 알아서 진행되는 일련의 과정을 말한다. 이 추상클래스는 헬퍼클래스로서 서버든 클라이언트든 이를 상속시켜주어 실제 소켓을 구현하게 도움을 준다. 특히 단어의 특성에 따라 method chaining이 가능하다. 기동을 하기위한 전체적인 일종의 틀 혹은 컨테이너.public class ServerBootStrap extends AbstractBootstrap 실제 서버를 구현하는 부트스트랩. 클라이언..

Java/Netty 2017.10.20

[Netwok/Netty]05. Netty 구축을 위한 beans(1) - Group

[Netwok/Netty]05. Netty 구축을 위한 beans(1) - Group1. public absctract interface EventExecutorGroup extends ScheduledExecutorService, Iterable 데이터를 주고 받는 이벤트들의 생명주기를 관리한다. 다시 말하자면 데이터를 주고 받는 그 이벤트들이 일종의 쓰레드라 볼 수 있는데, 이러한 쓰레드들을 관리하는 스케쥴러와 같다.2. public abstract interface EventLoopGroup extends EventExecutorGroup 서로 다른 종류들을 가진 전송 이벤트들의 추상적 모델.3. public class NioEventLoopGroup extends MultithreadEventLo..

Java/Netty 2017.10.20

[Netwok/Netty]04. 사전에 파악할 용어

[Netwok/Netty]04. 사전에 파악할 용어(출처 : https://shortstories.gitbooks.io/studybook/content/c8fc_c694_d2b9_c9d5.html http://clairdelunes.tistory.com/62 http://homoefficio.github.io/2017/02/19/Blocking-NonBlocking-Synchronous-Asynchronous/) 대체적인 뜻만 파악하고 차후 하나씩 분석한다. 1. Sync 통신 특정 서비스를 요청하면 응답이 올 때 까지 기다리는 통신. 혹은 응답을 받아서 작업 완료 여부까지 요청하는 작업까지 진행한다. 직관적 흐름을 추적할 수 있다.2. Async 통신 특정 서비스를 요청하면 응답이 올 때 까지 기다리지..

Java/Netty 2017.10.19

[Netwok/Netty]03. ByteBuffer VS ByteBuf - ByteBuf

[Netwok/Netty]03. ByteBuffer VS ByteBuf - ByteBuf(출처 : https://netty.io/4.0/api/io/netty/buffer/ByteBuf.html) 1. 차이점ByteBuffer는 capacity, limit, potion로 데이터를 읽고 썼다. 읽든 쓰든 position이 변경되고, flip을 통해 읽기와 쓰기를 하는데 있어 계산을 하면서 개발해야 한다. 또한 capacity는 한번 지정하면 변경이 불가하기에 새로 객체를 생성해야된다. 그러니까 setCapacity(int capacity)같은 method가 없다는 의미. 게다가 capacity를 넘는 데이터를 입력하면 BufferOverflowException발생한다.Bytebuf는 capacity, r..

Java/Netty 2017.10.14

[Netwok/Netty]02. ByteBuffer - ByteBuffer

[Netwok/Netty]02. ByteBuffer VS ByteBuf - ByteBuffer(출처 : http://aoruqjfu.fun25.co.kr/index.php/post/561) Buffer 사전적 의미는 완충을 말한다. 컴퓨터 시스템의 어떤 장치에서 다른 장치로 전송을 할 때에, 일시적으로 그 데이터를 보관하는 일종의 메모리 영역이다. buffering이라 함은 buffer를 채우는 동작을 일컷는 말로서 유사어로 Queue가 있다. ByteBuffer Java NIO에서 제공되는 Buffer다. NIO의 Buffer는 다양한 자료형들을 관리하고있으며 내부의 배열상태를 관리한다.(ByteBuffer, CharBuffer, IntBuffer...) Buffer의 fieldcapacity Buff..

Java/Netty 2017.10.09

[Network/Netty]01. OverView

[Netwok/Netty]01. OverView(출처 : https://netty.io/)비동기형태의 이벤트 기반 네트워크 애플리케이션 프레임워크로서 지속적으로 유지가 가능하고 높은 성능을 가진 서버와 클라이언트간에 빠른 개발을 위한 목적을 두고있다.빠르고 쉬운 네트워크 애플리케이션 개발이 가능하며 단순하고 TCP, UDP같은 스트림형 네트워크 프로그램을 단순화 하였다.블록킹과 넌블록킹 소켓 같은 다양한 전송 타입을 통합한 API다.유연하고 확장가능한 이벤트 기반을 둔다.쓰레드풀이나 단일 쓰레드같은 쓰레드모델을 고급적으로 커스텀할 수 있다.자원소비가 많지 않으며 불필요한 메모리 복사를 최소화 한다.

Java/Netty 2017.10.08

[Database/ibatis] iBatis – Basic Meta Data

[Database/ibatis] iBatis – Basic Meta Data mybatis-config.xml핵심 MetaData.properties 관리 : 애플리케이션에 배포 할 때, 공통적인 부분이나 환경별 다른 값들은 Properties에 독립적으로 관리. 대개 DBMS에 접속하는 정보를 작성한다.ClassName 관리 : FQCN(Full Qualified Class Name) 을 별칭(Alias)으로 관리 기타 설정 : 트랜잭션처리, 커넥션풀 설정, SQL 등 여러 환경설정을 등록,설정한다. UserMapper.xmlSQL 를 갖는 MetaDataMyBatis Framework는 XML MetaData 를 사용하여 SQL구문을 관리한다.(SQL은 xml 을 통해 캡슐화 되어 애플리케이션 외부로..

Java/ibatis 2016.11.06