Soul 学习笔记---soul-examples-sofa插件流程分析(十四)

本文记录了Soul与SOFA插件的整合过程,包括启动问题、执行流程及元数据注册。在遇到启动错误后,通过启动Zookeeper解决,并理解了插件如何处理请求和响应,特别是SofaProxyService的泛化调用。SOFARPC本质上利用Dubbo作为RPC框架,实现服务的发布和订阅。
摘要由CSDN通过智能技术生成

根据soul官方文档的指引,Sofa接入soul网关,启动完 soul-admin,soul-bootdtrap,再去启动 TestSofaApplication 时报连接错误,看了下是因为没启动 zookeeper,zookeeper 开启后 ,就成功运行了 sofa插件,但使用网关访问时报这个错误。

{"code":-106,"message":"Can not find url, please check your configuration!","data":null}

后来发现重启 soul-bootstrap 就可以了,应该是重启才注册了元数据。

sofa插件执行的时候,首先是在 AbstractSoulPlugin 根据 url 找到对应的选择器规则。

在执行 GlobalPlugin 时,使用 DefaultSoulContextBuilder ,构建了 exchange 的数据,从缓存中拿到元数据,放到 exchange 里。

在执行 BodyParamPlugin 插件时,把 sofa 的参数封装在 exchange 里。

exchange.getAttributes().put(Constants.SOFA_PARAMS,
     HttpParamConverter.ofString(() -> serverRequest.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值