当前位置:   article > 正文

java版gRPC实战之五:双向流,rabbitmq持久化原理_responseobserver.oncompleted();

responseobserver.oncompleted();

responseObserver.onNext(DeductReply.newBuilder()

.setCode(code)

.setMessage(message)

.build());

}

@Override

public void onError(Throwable t) {

log.error(“批量减扣库存异常”, t);

}

@Override

public void onCompleted() {

log.info(“批量减扣库存完成,共计[{}]件商品”, totalCount);

responseObserver.onCompleted();

}

};

}

}

开发客户端应用

  • 在父工程grpc-turtorials下面新建名为double-stream-server-side的模块,其build.gradle内容如下:

plugins {

id ‘org.springframework.boot’

}

dependencies {

implementation ‘org.projectlombok:lombok’

implementation ‘org.springframework.boot:spring-boot-starter’

implementation ‘org.springframework.boot:spring-boot-starter-web’

implementation ‘net.devh:grpc-client-spring-boot-starter’

implementation project(’:grpc-lib’)

}

  • 配置文件application.yml,设置自己的web端口号和服务端地址:

server:

port: 8082

spring:

application:

name: double-stream-client-side

grpc:

client:

gRPC配置的名字,GrpcClient注解会用到

double-stream-server-side:

gRPC服务端地址

address: ‘static://127.0.0.1:9901’

enableKeepAlive: true

keepAliveWithoutCalls: true

negotiationType: plaintext

  • 启动类DoubleStreamClientSideApplication.java的代码就不贴了,普通的springboot启动类而已;

  • 正常情况下我们都是用StreamObserver处理服务端响应,这里由于是异步响应,需要额外的方法从StreamObserver中取出业务数据,于是定一个新接口

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/146000?site
推荐阅读
相关标签
  

闽ICP备14008679号