【发布时间】:2020-06-08 22:16:12
【问题描述】:
基本上我有一个多租户反应应用程序。我目前有 15 个客户,部署到 Dev、Stage 和 Prod Env。无论开发、阶段和产品如何,我对不同的客户都有不同的要求。维护此架构的最佳实践是什么。目前,我在我的代码中为特定客户编写条件以进行特定更改。
我正在使用React 15.6.1, WebPack, Redux
下面是我的配置文件
appConfig = {
localhost: {
param1: 'customer-det',
param2: 'customer-det',
param3: 'customer-det',
},
'Customer1': {
param1: 'customer-det',
param2: 'customer-det',
param3: 'customer-det',
},
'Customer2': {
param1: 'customer-det',
param2: 'customer-det',
param3: 'customer-det',
},
'Customer3': {
param1: 'customer-det',
param2: 'customer-det',
param3: 'customer-det',
},
'Customer4': {
param1: 'customer-det',
param2: 'customer-det',
param3: 'customer-det',
},
'Customer5': {
param1: 'customer-det',
param2: 'customer-det',
param3: 'customer-det',
},
};
【问题讨论】:
-
也许您可以使用flagged 之类的东西在整个代码中实现功能标志,并配置哪些客户可以使用数据库中的哪些功能。现在您只有一个所有客户都可以使用的代码库,并且您可以在数据库中配置客户功能。当你搜索“react feature flag”时,你会发现很多解决方案,一些是商业的,一些是开源的。
标签: javascript reactjs redux architecture multi-tenant