분류 전체보기621 [webflux] PublishOn, SubscribeOn WebFlux를 사용하는데 있어서, publisher와 subscriber 모델의 개념을 이해하는데까지 시간이 많이 소요가 되었다. mvc로 개발할 때는 메서드 호출만 하면 결과값이 return이 되었다. webflux를 사용해 비동기식으로 개발을 할 때는 메서드만 호출해서는 원하는 결과를 얻기가 힘들다. webflux에서는 subscribe(구독) 을 해야 동작을 한다. PublishOn 신호 처리 스케줄링으로 onNext, onComplete, onError 가 지정된 Scheduler 의 스레드에서 신호 처리 스레드 설정 다음 PublishOn을 만날 때까지 같은 스레드에서 동작 안만나면 동작 끝내고 마침 SubscribeOn 시퀀스를 실행할 스레드를 결정 PublishOn을 만날 때까지 같은 스레.. 2022. 4. 15. Spring WebFlux WebFlux 란 WebFlux 는 Spring 5에서 새롭게 추가된 모듈이다. 클라이언트, 서버에서 reactive 스타일의 어플리케이션 개발을 도와주는 모듈이며 Non-blocking 에 reactive streams 의 BackPressure을 지원하며 Netty, Servlet3.1+ 컨테이너와 같은 서버에서 실행된다. 위의 그림은 각각의 기능들과 공통점에 대해 나와있다. 위는 전반적인 WebFlux의 구조이다. WebFlux 를 사용하기 전에 WebFlux 가 왜 생겨났는지 궁금했다. WebFlux 가 생긴 이유 적은 수의 스레드와 최소한의 하드웨어 자원으로 동시성을 처리하고 리소스를 확장하기 위해서 만들어졌다. 이는 새로운 공통 API 가 생긴 이유가 됐으며, tomcat 이 아닌 netty와.. 2022. 4. 14. [github] Git Action 이용해서 티스토리 게시글 깃허브에 업로드하기 이전에 비슷하게 작업한 내용이 있다. 티스토리 게시글 깃허브에 커밋으로 업로드하기 [github] 티스토리 게시글 깃허브에 커밋으로 업로드하기 티스토리에 블로그를 작성할 때마다 깃허브에 커밋하면서 블로그 최신 내용을 업로드 하고싶었다. 나는 파이썬 파일에 README 내용을 만들고 새로운 블로그 내용이 있을때마다 README 를 다시 작성 bsssss.tistory.com 이전에 작업한 내용은 리드미를 계속적으로 다시 생성해서 업로드 하는 것이라면 이번에 정리할 내용은 블로그 내용만 업로드 해주는 것이다. 어떤 고수분이 만들어 둔 것을 사용했다. name: Latest Blog Posts on: schedule: # Runs every hour, on the hour - cron: '0 * * * *' .. 2022. 4. 14. [Intellij] JUnit Test 실행 시 No tests found for given includes Intellij에서 아래 Test 부분을 실행하는데 No tests found for given includes 다음과 같은 에러가 나면서 테스트가 실행되지 않았다. Preference 에서 아래 메뉴 위치로가서 다음을 사용하여 테스트 실행을 IntelliJ IDEA 로 변경하면 된다. 테스트 빌드가 완성된 것을 확인할 수 있다. 2022. 4. 14. [spring] @Test 빌드시 ' Cannot find symbol method' 에러 error: cannot find symbol 프로젝트를 만들고 빌드하는데 다음과 같은 에러가 나면서 프로젝트 빌드가 되지 않았다. 개발환경은 java 1.8 버전과 build.gradle 에서 진행했다. 다음과 같은 에러가 생긴것은 롬복을 사용하는데 annotationProcessor 를 사용하지 않아서 생긴 오류였다. 아래 내용을 추가해주고 리빌드하니 에러가 없어지고 빌드가 되었다. annotationProcessor 'org.projectlombok:lombok' AnnotationProcessor 란 일반적으로 어노테이션에 대한 코드베이스를 검사, 수정, 생성 하는데 사용된다. 본질적으로 java 컴파일러의 플러그인의 일종이다. gradle 에서 별다른 설정을 하지 않아도 gradle 자체에서 a.. 2022. 4. 13. Reactive Programming Reactive Programming란 Reactive 라는 건 변화에 반응하게 만들어진 프로그래밍 모델이다. Reactive Programming이란 데이터의 흐름과 변화의 전파에 중점을 둔 프로그래밍이다. 데이터가 변경될때마다 이벤트를 발생시켜서 데이터를 계속적으로 전달한다. 리액티브 프로그래밍은 완전 비동기적이고, 논 블록킹 하게 구현되어 있으며, 이벤트 중심으로 동작한다. 이런 특징으로 인해 리액티브 프로그래밍을 도입하면, 복잡한 코드를 작성할 필요 없이 효율적으로 대용량 처리가 가능하다. Reactive System 리액티브 시스템이란 응답이 잘 되고, 탄력적이며 유연하고 메시지 기반으로 동작하는 시스템을 말한다. 아래 4가지 특성을 만족함면 리액티브 시스템이라고 할 수 있다. 리액티브 선언문에.. 2022. 4. 12. 이전 1 ··· 32 33 34 35 36 37 38 ··· 104 다음