sofastack / sofa-ark

SOFAArk is a light-weight,java based classloader isolation framework.
https://www.sofastack.tech/projects/sofa-boot/sofa-ark-readme/
Apache License 2.0
1.54k stars 487 forks source link

MainMethodRunner 中对于 envs 的处理是否可以直接复用 koupleless 中的 MultiBizProperties #950

Open shichaoyuan opened 1 week ago

shichaoyuan commented 1 week ago

Feature description

https://github.com/sofastack/sofa-ark/blob/feeae5d04160c1b7a99afbc6ad84aae50f33fe03/sofa-ark-parent/core-impl/archive/src/main/java/com/alipay/sofa/ark/bootstrap/MainMethodRunner.java#L52-L56

koupleless 的 MultiBizProperties 提供了基于 classloader 的系统属性隔离,是否可以将该机制复用到 sofa-ark 中实现 envs 的隔离?

Additional notes

相关PR https://github.com/koupleless/koupleless/pull/58

lvjing2 commented 1 week ago

可以的,env 不一定一定要通过 jvm层面的多租户解决,只要在上一层有一个逻辑的隔离就可以的。 MultiBizProperties 是一种可行的实现方式。不用 MultiBizProperties (避免污染 properties) 也可以用别的来实现,例如 namespace、prefix 等。

shichaoyuan commented 1 week ago

可以的,env 不一定一定要通过 jvm层面的多租户解决,只要在上一层有一个逻辑的隔离就可以的。 MultiBizProperties 是一种可行的实现方式。不用 MultiBizProperties (避免污染 properties) 也可以用别的来实现,例如 namespace、prefix 等。

希望社区给一个建议实现,在sofa-ark这一层解决掉。