请稍等 ...
×

采纳答案成功!

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

sentinel 授权规则持久化

我看了老师对于 sentinel 持久化的拓展, 每一份规则数据都是双份存储, 一份是用于 sentinel 控制台数据展示,一份是用于 sentinel 客户端。之所以要这么处理,应该是由于授权规则特殊。

控制台展示是需要如下结构:
{“app”:“shop”,“gmtCreate”:1587947071807,“gmtModified”:1587947071807,“id”:1,“ip”:“192.168.27.1”,“port”:8720,“rule”:{“limitApp”:“hello”,“resource”:“ceshi01”,“strategy”:1}}

而sentinel 客户端应该拿到的结构是:{“limitApp”:“hello”,“resource”:“ceshi01”,“strategy”:1},否则将对授权规则不生效。

定义双份, 在基于 nacos 维护时,无疑也是需要维护两份数据,不方便也容易导致数据的不一致性。
我是实现了结构兼容,想想也不怎么合理。最合理的方式是不是只保留控制台的识别的数据结构, 由 sentinel 客户端做数据的二次处理额?
sentinel 应该提供持久化机制呀, 自行实现,版本升级无疑是一件很麻烦的事情额。

正在回答 回答被采纳积分+3

1回答

大目 2020-04-28 03:00:53

sentinel dashboard默认没有持久化机制,只能自己扩展。

之所以要弄双份

读:是让sentinel去读取规则的;

写:是让sentinel更新规则的


这块设计我个人也很不喜欢,弄得很复杂……

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信