YARP实现Dapr服务调用的反向代理 (2)

配置tye
参考:

name: dapr-yarp.sample extensions: - name: dapr components-path: "./components/" config: dapr-config exclude-placement-container: true placement-port: 6050 - name: zipkin services: - name: gateway-demo #服务名称最好不要有大写,容易出问题 project: ./GatewayDemo/GatewayDemo.csproj - name: service-sample #服务名称最好不要有大写,容易出问题 project: ./ServiceSample/ServiceSample.csproj - name: zipkin #dapr的追踪服务 external: true bindings: - name: http port: 9411 ingress: - name: ingress rules: - service: gateway-demo path: / bindings: - name: ingress protocol: https port: 44363 #对外端口

./componnets/文件夹下还有一些配置文件,这里就不贴了

用tye同时运行多个项目
确保dapr那3个容器服务正常运行后,运行 tye run,通过tye的Dapr扩展,运行显示以下几个服务:

gateway-demo

service-sample

zipkin

gateway-demo-dapr

service-sample-dapr

ingress

测试:
浏览器直接打开:https://localhost:44363/api/service-sample/sample/1234
如果显示 {"account":"1234","balance":100} 就说明通了。

附上Demo代码

github

尾声

因为目前没有用到对外的grpc调用和Actor、发布订阅等功能,所以本示例没有相关代码演示。
Yarp虽然还在preview,但有兴趣的.NET技术栈的玩家已经可以用它来做些简单的反向代理了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpsjsd.html