0%

MEPER License

因为MEPER-Cloud 后面要拓展所有的套件,所以 license 校验逻辑需要重新设计。

需求背景

license 重新设计的原因MEPER-Cloud 当创建完项目后,是支持所有的套件SDK 调用的,所以在 MEPER-Cluod 中进行开发,不能很好的进行 SDK 使用的监控。

所以想办法将校验的 license 对应套件的方式,转到下载 APP 启动服务之后,对应 SI 或者企业申请了license,我们将对套件的 SDK 进行拦截检查。

需求分析

之前的 license 是对应公司加上多个 App 也就是不同的套件。但是 MEPER-Cloud 之后,所有的套件将会冗余到一个项目中,所以要针对不同的 SDK 进行 license 标识。

参考之前的 license aspect 切片,是针对有所有的 IHandler 进行 Around 切面,虽然能够拦截所有的 SDK 的 service,但是没办法针对套件进行区分,所以目前的设计是,针对不同套件的 SDK 进行分类,然后定义针对不同套件的 license aspect 切面,然后共同继承同一个校验 License 的 Base Validator,从而对当前 license 文件是否有效进行验证。

需求明细

1、BaseValidator

能否复用之前的 License loader 的校验逻辑进行处理。

2、套件的 aspect

不同的套件的切面逻辑,是否能够抽象,在 framework 中定义,然后不同的套件进行实现和重写, 从而进行套件 SDK 的区分。

3、在线 license 校验升级离线

参考之前的逻辑,或者重新设计,怎么处理从在线校验到离线 license 校验的过程。

业务描述

license初版设计.png
upload successful