请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

改造sentinel控制台测试推模式时候,热点规则的问题。

大目老师您好,改造完成后发现热点规则可以持久化但是不生效,debugger发现是客户端在解析规则的时候可能出异常了,也就是在com.alibaba.cloud.sentinel.datasource.converter.SentinelConverter类里面的convertRule方法好像不能正常解析,如下图
com.alibaba.cloud.sentinel.datasource.converter.SentinelConverter.convertRule
从nacos拿下来的字符串格式是这样的,如下图
图片描述
一顿解析后就成了这样了,如下图
图片描述
图片描述

然后试了下ObjectMapper,唉?灵光一闪,(在一边写问题一边写BUG…呵呵呵呵),然后试了下,在publishih的时候代码修改如下
图片描述

是的,把ParamRuleEntity换成了ParamRule, 重启,规则生效了,但是此时控制台显示错误了。这个时候已经很想睡觉了,然后
图片描述
代码很乱,但是很困了,重启后正常显示了,但是没法修改的,因为很多字段没有,想修改的话,删除重新添加是没有问题的,

另外flowRule的那个前端代码,因为官方已经有写好的代码了,在下前端比后端还弱,这个前端框架也看不太懂,凭感觉把identity.js的FlowServiceV1改成了FlowServiceV2如下图,
图片描述
好了生效,前端好像有缓存问题。。。

这就是一个数据的解析问题,不知道是我没有用正确的方法还是官方有坑。
神智不是很清醒,不知道有没有表达明白。

还请大目老师解惑。。。

正在回答

1回答

您好,我也认为是官方有坑。

https://github.com/alibaba/spring-cloud-alibaba/issues/771

我在7月的时候,有提过这个issue,和你一样,也是认为com.alibaba.cloud.sentinel.datasource.converter.SentinelConverter有问题。

不过官方经过一顿操作猛如虎后,说没有发现问题,然后就给我关闭掉了。


另外,我觉得也可能不是SentinelConverter的问题,而是Sentinel兼容性问题。

Sentinel Dashboard是1.6.2;而课上用的Spring Cloud Alibaba对应的Sentinel版本是1.5.2。所以可以试试将Spring Cloud Alibaba版本升级到2.1.0+试试看。


最后,为您的死磕精神点赞!看好你哦^_^加油!未来的大佬就是你,哈哈哈。

1 回复 有任何疑惑可以回复我~
  • 提问者 Doctor_Blind #1
    感谢老师!因为我来学习这门课程已经比较迟了,所以我索性用了最新的版本的spring Cloud Alibaba,sentinel控制台版本是1.7.0是对应的,就是这个问题。所以先把这个问题留着吧,继续后面的课程。谢谢老师!
    回复 有任何疑惑可以回复我~ 2019-12-25 19:15:57
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信