목록전체 글 (287)
개발자는 기록이 답이다
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/elUgIX/btsE1DqqdgO/1zIsmkkiFJIaAYG7yQkBy1/img.png)
1. Netty의 구조와 동작방식 공식문서에 따르면 Netty의 설명은 아래와 같습니다. Netty는 유지보수 가능한 고성능 프로토콜 서버 및 클라이언트의 신속한 개발을 위한 비동기 이벤트 기반 네트워크 응용 프로그램 프레임워크입니다. Netty는 빠르고 쉬운 NIO 클라이언트 서버 프레임워크로, 프로토콜 서버 및 클라이언트와 같은 네트워크 응용 프로그램의 신속하고 쉬운 개발을 가능케 합니다. TCP 및 UDP 소켓 서버와 같은 네트워크 프로그래밍을 크게 단순화하고 간소화합니다. '빠르고 쉽다'는 결과적으로 애플리케이션이 유지 관리 또는 성능 문제에 영향을 받을 것이라는 의미는 아닙니다. Netty는 FTP, SMTP, HTTP 및 여러 이진 및 텍스트 기반 레거시 프로토콜의 구현 경험을 토대로 주의 깊..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bxNHII/btsEWLjrNm6/lfjWqn6eucJdtutT2b9JBk/img.png)
1. Spring frame work는 어떻게 구성되어있을까? 스프링 포트폴리오는 두 가지 병렬 스택을 제공합니다. 하나는 Spring MVC 및 Spring Data 구성 요소를 사용하는 Servlet API 기반의 스택이며, 다른 하나는 Spring WebFlux 및 Spring Data의 리액티브 저장소를 활용한 완전히 리액티브한 스택입니다. 두 경우 모두 Spring Security가 두 스택에 대한 네이티브 지원을 제공합니다. 먼저 Servlet Stack은 5개의 계층으로 이루어져 있습니다. Servlet Containers (예: Tomcat, Jetty, JBoss 등)는 첫 번째 계층입니다. Servlet API는 두 번째 계층으로, Servlet Containers에서 사용되는 API를..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dXl8oZ/btsE0qkwayx/ZxB07M0ozcZj7KwKtRghQK/img.png)
1. Proactor Pattern reactor 패턴의 단점들을 보완하기 위해 고안된 패턴이다. 2. Reactor의 문제점 Reactor에서 단일 쓰레드와 Selector를 통해서 이벤트처리 Selector가 커널과 통신하면서 완료된 애들이 있는지 능동적으로 물어보는 형태 감당하기 힘든 트래픽이 부여되거나 이벤트 처리에 오랜시간이 걸리는 경우 전체시스템에 영향을 줄 수 있다 1. 단일 스레드 한계 Reactor가 단일 쓰레드에서 이벤트를 처리하다 보니, 해당 쓰레드에서의 작업이 많아질 경우 처리 속도가 저하될 수 있습니다. 이는 다수의 요청이 동시에 처리되어야 하는 상황에서 성능 문제를 유발할 수 있습니다. 2. Blocking 작업의 문제 Reactor는 단일 쓰레드에서 모든 이벤트를 처리하므로, ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b4Swj6/btsE1DYexsK/4pKY6oP18NDpOsQnsM5Lm1/img.png)
Reactor pattern 실습 • Reactor pattern을 이용해서 외부에서 들어오는 요청을 처리한다 • Reactor pattern에 HttpEventHandler를 추가하여 http 요청을 처리한다 이번에는 Reactor pattern을 실습하는 시간이었다. 관련된 코드를 처음 보다 보니 강의를 진행할 수록 더 어렵게 느껴졌다. 해당 강의가 3년차 이하는 구매하지 말라고 했던게 왜 인지 점점 깨닫고 있다. io,nio,aio 의 특징을 설명할때 까지만 해도 배운내용이라 괜찮았는데, nio에 어떤 코드들이 있는지 파악할시간이 필요할 것 같다. 코드를 그대로 따라한것같은데 왜 나는 계속 컴파일 에러가 날까.. 개념 정리를 하는게 더 나을 것 같다.. 동기와 비동기, Blocking과 Non-b..