[2
的技术功能flags 可让您在不修改源代码的情况下激活或禁用系统的模块。 该控件可以通过数据库,配置文件,环境变量以及其他方法来实现。
使用功能flags
安全性:
渐进式启动:- 在步骤中促进启动,允许您在将其提供给所有人之前使用SELECT用户组测试新功能。
访问控制:
- 维护中的灵活性:简化了维护和更新模块的过程,使它们在维护过程中暂时禁用它们而不会影响系统操作。
降低风险:-
[2
有几个工具和库可用来帮助实现:
-
[2
-
configcat:
https://configcat.com
togglz: https://www.togglz.org
通过数据库- 实现
使用数据库实现
,请按照以下步骤:-
创建表以存储有关模块及其各自标志的信息。
实施一个中间件,以拦截模块的申请。
- 中间件必须读取数据库模块标志。
根据标志的状态激活或禁用模块。
记录和返回错误消息,如果模块出现问题。
必要时,为每个模块实现用户访问规则。
-
代码示例源:
https://github.com/ortizdavid/golang-modular-software -
-
-