soul网关学习4-给soul官方提issue过程

今天原本打算将soul网关的其他几个功能插件(HystrixRateLimiterSentinel)验证一下,看看他们是怎么起作用的。结果当我测试Hystrix插件的时候,同步数据的时候出现了一个问题,下面将大致讲下我自己发现并解决问题的过程。

问题描述与处理

我在soul-admin上面添加了Hystrix插件,配置情况如下:

  • 打开Hystrix插件开关
    Hystrix开关
  • 增加Hystrix插件配置
    Hystrix配置

    Hystrix配置-规则
  • 再通过postman模拟请求,程序却一直没有进行熔断
  • 怀疑是我的配置并没有下发到网关bootstrap,于是尝试着手动将配置同步
    同步Hystrix配置
  • admin前端返回提示同步成功,但我看后台bootstrap日志时发现如下错误
    NPE
  • 经过debug知晓,配置同步过程中如果存在参数为空的接口,那么就会引发NPE
  • 看起来这是一个BUG,于是我便到github上面提交了一个issue
  • 后续就是在soul官方的维护人员帮助下,以及查阅官方文档的源码贡献者指南,成功修复了这个BUG,提交了自己的第一个Pull Request,并已Merge
  • 提交的issue
    https://github.com/dromara/soul/issues/994

总结

  • 关于修复soul dubbo插件中的一些BUG时,需要注意可能要修改两个地方,Apache DubboAlibaba Dubbo。我这次的问题最初的时候我只在Alibaba Dubbo进行了修改,后面是soul官方人员dengliming的提示下,发现我的问题在Apache Dubbo中也存在。所以commit了两次才最终完成修改。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容