반응형
본 포스팅을 읽기 전에 Reactive Programming 에 대한 개념이 필요하다.
아래 참고 포스팅을 참고바란다.
RxJava 는 ReactiveX의 Java 언어 라이브러리로 넷플릭스에서 처음 소개 되었다.
이벤트 처리 및 비동기 처리의 구성에 최적화 되어있다.
장점
- 동시성 문제, 다중 이벤트 처리, 백그라운드 스레드 처리 등에 확실한 해결책을 제시
- 기존에 작성한 비즈니스 로직에 새로운 프로세스가 추가되어야 하는 경우 큰 리팩토링 없이 변경사항 구현 가능
- 네트워크 관련 대기 및 재시도 작업과 같은 예외 사항 추가 쉬움
구성요소
- Observable
- 데이터 스트림
- 하나의 스레드에서 다른 스레드로 전달할 데이터를 압축
- 주기적으로 또는 설정에 따라 생애주기 동안 한 번만 데이터를 방출
- 즉, 데이터를 처리하고 다른 구성요소에 전달하는 역할을 함
- Observers
- Observable에 의해 방출된 데이터 스트림을 소비
- Observable을 구독(subscribe)하여 방출하는 데이터를 수신할 수 있음
- Schedulers
- Observable과 Observers이 실행되어야 할 스레드를 알려줌
현재 사용중인 최신 버전 관련해서는 git 에서 관리가 되고 있으며 아래 사이트를 참조하면 도움이 된다.
https://github.com/ReactiveX/RxJava
사용법 역시 위 git 주소에 나와있고,
implementation "io.reactivex.rxjava3:rxjava:3.x.y" |
라이브러리를 받아오면서 시작이 된다.
참고 포스팅
https://thenicesj.tistory.com/1088
반응형
'IT > Knowledge' 카테고리의 다른 글
웹마스터 란? (8) | 2024.11.10 |
---|---|
zustand 란?(React 에서) (13) | 2024.10.23 |
Reactive Programming(리액티브 프로그래밍) 이란? (18) | 2024.10.17 |
키네시스 스프링(Kinesis Spring) 이란 (12) | 2024.10.15 |
Race condition이란 (15) | 2024.10.07 |
댓글