【发布时间】:2019-05-18 06:56:25
【问题描述】:
这个问题是一般性的。假设您有很多微服务调用某个内部库。这个库有一个核心函数core_function(arg_1,arg_2,..)
在某些情况下,函数的反应会有所不同。 那么什么是好的做法呢?
我的一些想法:
- 向函数添加参数。
behavior_param。 缺点:很多微服务需要重构。微服务是类。所以我必须为每个类引入一个新参数 (或至少一个默认参数)并在调用 功能(当然只适用于需要修改行为的微服务) 在库中添加一些全局变量,例如
behavior_param可能在 __init__ 文件中。缺点:我会有一个全局参数,但不喜欢那样。使用环境变量。这就像第二种解决方案。但不知何故,我更喜欢这个主意
你怎么看?希望问题很清楚。我正在 python 中寻找最好和最自然的方法。
【问题讨论】:
-
lib 中其他函数的行为是否依赖于此参数?
标签: python design-patterns architecture