Spring/Spring Framework 6

[Netty] Netty가 뭐에요? - 6탄 : 공식 문서 - Echo 테스트 학습

지난 시간에는 Netty 학습 5탄에서 ByteBuf에 대해서 상세히 알아보았다.(이전 내용은 여기 클릭!) 이번에는 Netty 학습 4탄에서 미처 이어가지 못했던 예시 학습을 이어서 하려고 한다.(4탄 내용은 여기 클릭!)1. Composite Pattern과 Netty우선 예시를 더 보기 전에 필자는 해당 클래스들을 알게 되었다. EventExecutor 가 EventExecutorGroup을 상속하고EventExecutorGroup은 내부에 Iterator에 EventExecutor를 담고 있는 구조다. 무언가 Composite Pattern과 익숙하다. Composite Pattern 개별 객체와 객체 그룹을 똑같은 방식으로 다루는 디자인 패턴이다. 공통된 operation을 선언하고 Compo..

[Netty] Netty가 뭐에요? - 5탄 : Netty Architecture - ByteBuf Summary 읽기

지난 시간에는 Spring MVC, Spring Web Flux를 알아보면서 Netty의 차이점이 뭔지 알아보았으며, 가장 쉬운 예시 코드를 통해서 학습을 했다. (지난 내용 여기 클릭!) 이번에는 4탄에서 논의하느라 놓친 Netty 의 Architecture에 대해 알아보고자 한다. 지난 예시에서 봤던 NioEventLoopGroup, ServerBootStrap, ChanelInitializer 들이나 예시들은... 6탄에서부터 확인해면 될 듯 하다 ㅠㅠ.. 해당 글은 Javadoc 에서 소개하는 글을 io.netty.buffer 패키지를 중심으로 읽어보고, 핵심 클래스 구조들에 대해서 좀 더 알아보려고 한다. 참고로 3.x 버전까지는 뭔가 별도로 웹에서 볼 수 있게 정리를 해줬는데, (사이트 ..

[Netty] Netty가 뭐에요? - 4탄 : Spring MVC 와 Spring Web Flux 그리고 Netty 예시 코드 탐방

지난 시간에는 Netty의 공식문서에 있는 특징에 대해 알아보고 NIO 에 대한 예시 코드를 작성해보았다.(지난글은 여기 클릭!) 그리고 Architecture 초입부를 읽었는데... 그 전에! 이번 시간에는 자바공화국 한국에서 가장 많이 사용하는 Spring framework 와 Netty Framework을 간단하게 비교해보고 Netty 공식문서에서 제공하고 있는 예시 코드를 탐방해볼 것이다. 개인적으로 특정 기술에 대해 잘 모르겟으면, 필자 키메라는 비교군을 찾는 것이 좋다고 생각한다. 기존의 Spring은 뭐가 부족했길레 Netty 가 필요했던 것이고 두 개의 성격을 비교해보고자 한다. 물론 이전의 글 중 하나인 [Netty] Netty가 뭐에요? - 2탄 : Netty가 필요하기 까지 를 보..

[Netty] Netty가 뭐에요? - 3탄 : Netty의 특징과 구조 및 NIO 테스트

지난 시간에는 Netty의 탄생 배경에 대해 알게 되었다. (이전 글 클릭!) 글을 시작하기 전에 Netty 의 창시자는 한국인으로, 이희승 씨인데 LINE에서 인터뷰를 한 내용이 있는데 관심있는 분은 읽어보길 바란다. (비동기를 사랑하는 오픈소스 개발자, 이희승) 이번 시간에는 Netty의 공식문서에서 드러낸 특징들에 대해서 읽고 NIO로 테스트를 해 볼 것이다. 1. Netty 특징(Features) 탐구 뭐니뭐니해도 공식문서를 읽어야 한다. 공식문서의 내용을 정리하면 다음과 같다. Design(디자인)- 블로킹/논블로킹을 모두 지원하는 통일된 API- 유연하고 확장 가능한 이벤트 모델- 커스터마이징 가능한 스레드 모델 (싱글 스레드부터 SEDA 같은 멀티 스레드 풀까지)- UDP를 포함한 Con..

[Netty] Netty가 뭐에요? - 2탄 : Netty가 필요하기 까지

이전 글에서는 Netty의 소개를 읽고 관련 있는 기본 지식들에 대해 알아보았다. (여기 클릭!) 이번 시간에는 어떻게 해서 Netty가 출현하게 되었는지를 정리하려고 한다. 설명이 좀 부족할 수 있지만... 액기스와 중요한 부분만 캐치하고 흐름대로 정리하려고 한다. 물론 다 옛날에 분명 배웠고 기억도 가물가물하다. 하지만 다시 복기하는 차원에서...1. 초기 웹 : Static Web Server초기에는 정적 웹 서버만 제공을 했다. 정적 웹 서버란, 말 그대로 정적 파일만 제공하는 서버이다. HTML, CSS, Javascript 같은 단순한 파일을 그대로 전달해주고, 서버 쪽에서 별도 동적 연산을 하지 않는다. 우선 웹페이지를 가져오려면 우리 브라우저에 웹 서버에 파일을 요청한다. 그러면 serv..

[Netty] Netty가 뭐에요? - 1탄 : Netty 란? - 용어 정리

이번 새로운 회사에서 Netty 로 작동하는 Framework 에 대해 공부하려고 한다. 그런데 왜 Netty같은 프레임워크가 필요한지 자체도 이해를 잘 못했다. 그래서 초창기 정적 웹 서버와 관련된 지식, 동기와 비동기와 기존의 spring같은 서버 사용시 성능 문제점과 netty를 도입하면서 얻을 수 있는 장점에 대해 설명하고 후에는 그래서 netty를 어떻게 사용하는지 예제를 만들어 볼 것이다. 1. Netty 공식문서 - 용어 확인개발자라면 늘 해야 하는것! 공식문서를 보는 것이다. 다음은 Netty 공식문서 홈페이지에서 Netty 에 대해 소개하는 글이다. - 원문 -Netty is an NIO client server framework which enables quick and easy..