我在mongo中存储了四种不同的配置变体作为嵌套文档。
优先顺序:默认<环境<网站<页。 具有更高优先级的配置可以覆盖较低配置中的字段。
例如: 默认配置:
{
"a":{
"b":"c"
}
"default":{
}
}
Env配置:
{
"a": {
"b":"c"
}
}
网站配置:
{
"a": {
"b":"c"
}
}
页面配置:
{
"a": {
"b":"c"
}
}
因此,每当请求页面的配置时,我必须查询所有四个文档并合并它们。
如果请求页面配置,这将是合并文档:
{
"a":{
"b":"c"
},
"default": {
}
}
因此,如果我的页面被请求了一百万次,那么对于每个请求的页面,我应该获取所有四个文档并根据它们的优先级进行合并。
如何最好地存储此类数据,如何为每个页面加载删除四个db调用。是否有更好的方法来存储此类配置数据?