Netty(네티) 8

Netty 네티의 이벤트 루프 - 단일 스레드와 다중 스레드의 장단점, 네티의 단일 스레드와 다중 스레드

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 이벤트 루프 :이벤트 기반의 애플리케이션에서 이벤트를 처리하는 방법에는 크게두 가지가 있습니다. 하나. 이벤트 리스너와 이벤트 처리 스레드에 기반한 방법.=> 대부분의 UI 처리 프레임워크가 사용하는 방법입니다. 이벤트를 처리하는 로직을 가진 이벤트 메서드를 대상 객체의 이벤트 리스너에 등록하고 객체에 이벤트 발생 시 이벤트 처리 스레드에서 등록된 메서드를 수행합니다. 둘. 이벤트 큐에 이벤트를 등록한 후 이벤트 루프가 큐에 접근하여 처리하는 방법=> 하나. 의 방법에 비해서는 프레임워크 구현이 복잡하지만, 사용자 입장에서 보면 보다 간단하게 사용할 ..

Netty(네티) 2017.12.22

Netty 네티의 장점[1] : 블로킹과 논블로킹 변경을 간편하게.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 블로킹 모드와 논블로킹 모드를 선언하는 관점에서네티의 장점에 대해서 알아보겠습니다.소켓의 동작 방식은 블로킹과 논블로킹 두 가지 모드로 나뉘는데요. 블로킹은 요청한 작업이 성공하거나 에러가 나기 전까지는 응답을 돌려주지 않는 것을 말합니다.논블로킹은 요청한 작업의 성공 여부와는 상관없이 바로 요청한 작업의 결과를 돌려주는 것을 말합니다. 자바에서의 블로킹 모드와 논블로킹 모드의 코드를 보겠습니다.Blocking.java 123456789101112131415161718192021222324252627282930313233public class Bloc..

Netty(네티) 2017.12.19

네티 - 이클립스 자바 프로젝트에 네티 라이브러리 추가 및 Source Attachment

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 이번 포스팅에서는 이클립스에서 생성한 자바 프로젝트에네티 라이브러리를 제대로 등록하는 방법에 대해서 포스팅합니다. 먼저 자바 프로젝트를 생성합니다.그리고 프로젝트 우클릭 -> New -> Folderlib 라는 폴더를 만들어 주고요.http://Netty.io 에서 다운로드 받은 라이브러리를 넣어주는데요. 저는 all-in-one .jar 파일 두 개를 넣어줬습니다. 그 후 프로젝트 우클릭 -> Properties -> Java Build Path -> Add JARs 눌러서프로젝트/lib/netty-all-4.1.17.Final.jar 를 추가해주세..

Netty(네티) 2017.12.15

Netty 소켓 서버에 안드로이드 접속해서 채팅하기 Netty Socket Server and Android

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ Netty socket Server and android client socket communication 지난 포스팅까지해서네티 채팅 서버/클라이언트를 만들어서, 이크립스 콘솔에서 채팅하는 기능을 만들어보았는데요. 클라이언트를 안드로이드 쪽으로 와서 같은 기능으로 구현해보았습니다.서버는2017/12/13 - [Netty(네티)] - Netty(네티) 채팅 서버/클라이언트 [1] : 채팅 서버 만들기여기서 조금 수정되었습니다.ChatServerInitializer.java 파일이 수정되었는데요. 1234567891011121314151617181920..

Netty(네티) 2017.12.15

Netty(네티) 채팅 서버/클라이언트 [2] : 채팅 클라이언트 만들기

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 지난 포스팅에서는 네티 채팅 서버를 만들어 보았는데요.이번 포스팅에서는 네티 채팅 클라이언트를 만들어 보겠습니다. 서버와 마찬가지로 3개의 자바 클래스가 필요합니다. ChatClient, ChatClientInitializer, ChatClientHandler ChatClientInitializer.java 123456789101112131415161718192021222324252627import io.netty.channel.ChannelInitializer;import io.netty.channel.ChannelPipeline;import io...

Netty(네티) 2017.12.13

Netty(네티) 채팅 서버/클라이언트 [1] : 채팅 서버 만들기

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 네티를 사용한 채팅 서버에 사용되는 클래스들에 대해서 지난 포스팅에서 알아보았는데요. 이번 포스팅에서는 채팅 서버를 만들어 보겠습니다.가장 먼저 네티 라이브러리가 필요하겠죠?http://netty.io/ 위 사이트에 들어가시면 Downloads 탭에 4.1.18 final 버전이 있는데요.그걸 다운받아서 압축을 풀면 jar폴더에 all-in-one .jar 파일이 있습니다.그걸 이클립스에서 자바 프로젝트에 외부라이브러리 임포트하시면 준비는 됩니다. 서버에서는 3개의 클래스가 필요합니다.main() 함수가 있는 ChatServer채팅 서버의 채널을 초기..

Netty(네티) 2017.12.13

Netty(네티) 채팅 서버/클라이언트에 사용되는 클래스 알아보기!

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 이번 포스팅은네티를 사용한 채팅 서버/클라이언트를 만들어 보기 전에사용되는 클래스들을 알아보려고 합니다. 꽤 많은 클래스들이 사용되는데요. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 EventLoopGroup : EventExecutorGroup 인터페이스를 상속받은 인터페이스NioEventLoopGroup : I/O 작업을 처리하는 다중 스레드 이벤트 루프.ServerBoo..

Netty(네티) 2017.12.12

네티란 ? 자바 네트워크 어플리케이션 프레임워크

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 요즘 자바 서버를 공부하려고 찾아보다가 자바 네트워크 어플리케이션 프레임워크인 '네티Netty' 라는 것을 알게 되어서 구글링을 하며 공부 중인데요.기초에 대한 정보가 많이 없어서 책을 사야 할 듯 싶습니다 ㅎㅎ 무튼 첫 포스팅이니까 네티가 무엇인가 에 대해 알아보겠습니다. http://Netty.io 에서는 첫 줄에 아래와 같이 설명하고 있습니다.Netty is an asynchronous event-driven network application framework for rapid development of maintainable high perf..

Netty(네티) 2017.12.12