关于响应式编程的理解与SpringCloudGateway的理解
一. 响应式编程与函数式编程的区别
总的来说,响应式编程主要体现在①异步
、②观察者模式
以webflux和servlet为例子
一个是每个api请求代表着一个线程。
另一个是一个主线程内,可以使用多个子线程,达到异步的效果。
二. 响应式编程中常用的组件
2.1 RxJava定义
RxJava是一个可以在JVM上运行的,基于观察者模式 实现异步操作的java库。
2.2 Rxjava基本概念
// 创建观察者
Observer observer = new Observer<String>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Log.d(TAG, "onSubscribe");
}
@Override
public void onNext(String o) {
}
@Override
public void onError(@NonNull Throwable e) {
Log.d(TAG, "onError data is :" + e.toString());
}
@Override
public void onComplete() {
Log.d(TAG, "onComplete");
}
};
// 创建被观察者
Observable observable = Observable.create(new ObservableOnSubscribe() {
@Override
public void subscribe(@NonNull ObservableEmitter e) throws Exception {
</