Java Stack/Java-async
[Java8] CompletableFuture
[Java8] CompletableFuture
2020.10.13runAsync(() -> { Thread.sleep(500); }, executor); CompleatbleFuture에 대해 https://medium.com/@chanhyeonglee/completable-future-가이드-part-1 https://medium.com/@chanhyeonglee/completable-future-가이드-part-2 https://medium.com/@chanhyeonglee/completable-future-가이드-part-3 thenCompose VS thenApply thenCompose VS thenApply thenCompose는 Future 다음에 또 다른 Future를 이어서 실행하게끔 연결할 때 사용 thenApply는 Future 결과를 받았을 때 ..
Netty
Netty
2020.03.12https://github.com/netty/netty/wiki/User-guide-for-4.x https://netty.io/wiki/user-guide-for-4.x.html 공식 docs가 최고야! Netty가 무엇인가? Netty is an asynchronous event-driven network application framework. Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming s..
Reactive Programming
Reactive Programming
2020.02.17실전! 스프링 5를 활용한 리액티브 프로그래밍 예제 코드 Github 스크린 샷 / 다이어그램 그림파일 왜 리액티브인가? 전통적인 개발 방법대로 작성했을 때 발생했던 문제? 시간 당 리퀘스트, 처리 시간, 스레드 수를 고려해서 초당 1000건 처리할 수 있을 거라고 가정하고 시스템을 작성했는데 블랙 프라이데이 등 트래픽이 몰릴 시 응답 시간 증가 / 서비스 중단 사용자 응답성에 영향을 미칠 수 있는 변화(갑작스러운 트래픽 변화 등)에 반응하기 위하여 만족해야 하는 것? 탄력성(elasticity) 요청이 많아지면 시스템 처리량이 자동으로 증가했다가, 요청이 감소하면 자동으로 감소 수직적 또는 수평적 확장 ( Scale-Up, Scale-Out ) 하지만 이게 어려운 경우가 있음 ("6장 웹플럭스 - 비동..