본문 바로가기

Programming/TCP IP6

자바 TCP/IP 통신 (Netty, 네티) - 2 수신 스스로에게 하는 설명은 여기까지하고 좀 더 자세하게 소스코드를 적자면 이렇게 할 수 있다. Netty에서는 소켓통신을 이용하기 때문에 아이피뿐만이 아니라 접속할 포트번호까지도 필요하다. 웹 주소의 아이피도 자바에서 지원하는 URI 클래스를 이용해서 획득할 수 있고, http인지 https 인지 에 따라서 포트번호도 이미 정의가 되어있으니 80, 443 으로 파악할 수 있다. 클라이언트에서는 Bootstrap clientBootstrap = null; clientBootstrap = new Bootstrap(); EventLoopGroup e = new NioEventLoopGroup(Integer.valueOf(workerThread)); clientBootstrap.group(e) .option(Cha.. 2021. 5. 11.
자바 TCP/IP 통신 (Netty, 네티) 라이브러리로 Netty를 사용함. 자바의 socket 클래스를 이용해서 구현도 가능하지만 회사에서 소켓통신에 대한 부분을 네티를 이용해서 처리하고있어 이부분을 정리해보려고한다. 네티에서는 소켓 통신을 이용하여 클라이언트와 서버와 연결을 유지하고 BootStrap, channel, channelContextHandler 등의 클래스들을 이용하여 통신을 한다. 초기 연결시 BootStrap을 이용하여 서버와 클라이언트간 연결을 시도한다. 다만 이때 네티에서는 클라이언트와 서버는 초기 설정시 BootStrap, 이벤트처리 스레드 설정이 다르다. 서버는 serverBootstrap이라는것을 사용하고 이벤트 처리 스레드도 2개를 생성하여 클라이언트에 대한 연결과 데이터처리용으로 2개를 생성하고 클라이언트는 Boo.. 2021. 5. 11.