开发者社区 > 云原生 > 中间件 > 正文

为什么到现在Sentinel开源l还是不去掉fastjson的引用?

为什么到现在Sentinel开源l还是不去掉fastjson的引用?

展开
收起
三分钟热度的鱼 2023-07-12 09:03:32 150 0
2 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    Sentinel 是阿里巴巴开源的一款面向分布式服务架构的流量控制组件,其目的是通过流量控制、熔断降级、系统负载保护等手段,保障微服务架构的稳定性和可靠性。在 Sentinel 的早期版本中,确实使用了 fastjson 这个 JSON 解析库,在最新版本中也仍然存在 fastjson 的依赖。

    关于为什么 Sentinel 开源还是不去掉 fastjson 的引用,可能存在以下一些原因:

    兼容性:许多应用程序在使用 Sentinel 时,可能已经依赖了 fastjson 库,如果 Sentinel 去掉了 fastjson 的引用,可能会引起兼容性问题。

    开发成本:去掉 fastjson 的引用需要对 Sentinel 的代码进行修改和测试,这需要一定的开发成本和时间。

    功能需求:Sentinel 的开发人员可能认为 fastjson 是一个比较好用的库,可以满足当前的功能需求,因此没有必要去掉其引用。

    尽管 fastjson 存在一些安全漏洞,但是也有许多应用程序仍在使用它,因此在 Sentinel 的新版本中,可能会考虑引入其他的 JSON 解析库,或者对 fastjson 进行安全性修复,以保障 Sentinel 的安全性和稳定性。

    2023-07-29 09:02:24
    赞同 展开评论 打赏
  • Sentinel 开源项目目前仍然使用 fastjson,这可能是由于多种原因:

    1. 兼容性:Sentinel 作为一个广泛应用的流量控制和熔断降级框架,需要考虑与现有应用程序的兼容性。许多应用程序在过去使用 fastjson 作为 JSON 序列化和反序列化库,因此保留 fastjson 可以确保 Sentinel 在这些应用程序中的正常运行。

    2. 生态系统:fastjson 是一个成熟且功能强大的 JSON 库,拥有庞大的用户和社区基础。无论是在国内还是国际上,fastjson 都得到了广泛的应用和认可。保留 fastjson 的引用可以使 Sentinel 能够与 fastjson 相关的生态系统更好地集成,提供更灵活和易用的功能。

    3. 维护成本:移除或替换一个核心依赖是需要谨慎考虑的,特别是当该依赖已经被广泛采用并集成到大量代码中时。如果要移除 fastjson 并替换为其他 JSON 库,可能需要进行大量的重构和测试工作,增加维护成本和风险。

    尽管如此,Sentinel 社区始终在关注并评估各种技术选型和改进,以提高框架的质量和性能。它可能在未来版本中考虑引入其他 JSON 库或进行依赖更新,以适应不同的场景和需求。

    2023-07-28 15:18:52
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:

为企业提供高效、稳定、易扩展的中间件产品。

相关电子书

更多
阿里云容器 AHAS Sentinel 网关流控揭秘 立即下载
workshop专场-微服务专场-开发者动手实践营-微服务-使用Sentinel进行微服务流量控制 立即下载
Sentinel分布式系统下的流量防卫兵 立即下载