This is an automated email from the ASF dual-hosted git repository.

albumenj pushed a commit to branch 3.0-multi-instances
in repository https://gitbox.apache.org/repos/asf/dubbo.git

commit 113fd8cc3f2650bf58bc65752b38434c57bc2051
Author: Albumen Kevin <[email protected]>
AuthorDate: Sun Aug 29 18:14:21 2021 +0800

    Compact old style ApplicationModel
---
 .../DefaultGovernanceRuleRepositoryImpl.java       |  2 +-
 .../loadbalance/ShortestResponseLoadBalance.java   |  2 +-
 .../cluster/router/mesh/route/MeshRuleManager.java |  2 +-
 .../router/mesh/route/MeshRuleManagerTest.java     | 19 +++++----
 .../dubbo/common/config/ConfigurationUtils.java    |  8 ++--
 .../manager/DefaultExecutorRepository.java         |  4 +-
 .../org/apache/dubbo/config/AbstractConfig.java    |  4 +-
 .../dubbo/config/AbstractInterfaceConfig.java      |  4 +-
 .../java/org/apache/dubbo/config/MethodConfig.java |  2 +-
 .../apache/dubbo/config/context/ConfigManager.java |  2 +-
 .../apache/dubbo/rpc/model/ApplicationModel.java   | 49 ++++++++++++++++------
 .../dubbo/common/config/EnvironmentTest.java       |  3 +-
 .../dubbo/config/context/ConfigManagerTest.java    |  8 ++--
 .../org/apache/dubbo/config/DubboShutdownHook.java |  2 +-
 .../org/apache/dubbo/config/ReferenceConfig.java   |  6 +--
 .../org/apache/dubbo/config/ServiceConfig.java     |  2 +-
 .../dubbo/config/bootstrap/DubboBootstrap.java     |  4 +-
 .../ConfigurableMetadataServiceExporter.java       |  4 +-
 .../ServiceInstanceHostPortCustomizer.java         |  2 +-
 .../dubbo/config/utils/ReferenceConfigCache.java   |  4 +-
 .../apache/dubbo/config/AbstractConfigTest.java    | 36 ++++++++--------
 .../dubbo/config/ConfigCenterConfigTest.java       | 13 +++---
 .../apache/dubbo/config/ConsumerConfigTest.java    |  9 ++--
 .../apache/dubbo/config/ReferenceConfigTest.java   | 10 ++---
 .../apache/dubbo/config/RegistryConfigTest.java    |  6 +--
 .../org/apache/dubbo/config/ServiceConfigTest.java |  9 ++--
 .../metadata/MetadataServiceExporterTest.java      |  6 +--
 .../spring/context/DubboConfigBeanInitializer.java |  7 ++--
 .../DubboInfraBeanRegisterPostProcessor.java       |  5 ++-
 .../org/apache/dubbo/config/spring/ConfigTest.java | 20 ++++-----
 .../dubbo/config/spring/JavaConfigBeanTest.java    |  5 ++-
 .../DubboComponentScanRegistrarTest.java           |  4 +-
 .../context/annotation/EnableDubboConfigTest.java  |  4 +-
 .../spring/issues/issue7003/Issue7003Test.java     |  3 +-
 .../consumer/PropertyConfigurerTest.java           |  4 +-
 .../consumer2/PropertySourcesConfigurerTest.java   |  4 +-
 .../consumer3/PropertySourcesInJavaConfigTest.java |  8 ++--
 .../spring/schema/DubboNamespaceHandlerTest.java   |  4 +-
 .../metadata/report/MetadataReportInstance.java    |  2 +-
 .../apache/dubbo/qos/command/impl/BaseOffline.java |  2 +-
 .../apache/dubbo/qos/command/impl/BaseOnline.java  |  2 +-
 .../org/apache/dubbo/qos/command/impl/Live.java    |  2 +-
 .../org/apache/dubbo/qos/command/impl/Ready.java   |  2 +-
 .../org/apache/dubbo/qos/command/impl/Startup.java |  2 +-
 .../qos/probe/impl/ProviderReadinessProbe.java     |  2 +-
 .../dubbo/qos/command/impl/InvokeTelnetTest.java   |  2 +-
 .../dubbo/qos/command/impl/SelectTelnetTest.java   |  2 +-
 .../client/ServiceDiscoveryRegistryDirectory.java  |  4 +-
 .../metadata/MetadataServiceNameMapping.java       |  2 +-
 .../StandardMetadataServiceURLBuilder.java         |  2 +-
 .../client/migration/MigrationRuleListener.java    |  4 +-
 .../registry/integration/RegistryProtocol.java     |  8 ++--
 .../client/migration/MigrationInvokerTest.java     |  2 +-
 .../migration/MigrationRuleListenerTest.java       |  6 +--
 .../support/ServiceOrientedRegistryTest.java       |  4 +-
 .../registry/dns/DNSServiceDiscoveryTest.java      |  8 ++--
 .../ZookeeperServiceDiscoveryChangeWatcher.java    |  4 +-
 .../dubbo/remoting/api/NettyEventLoopFactory.java  |  2 +-
 .../org/apache/dubbo/remoting/api/SslContexts.java |  6 +--
 .../dubbo/remoting/transport/CodecSupport.java     |  2 +-
 .../transport/netty4/NettyEventLoopFactory.java    |  2 +-
 .../java/org/apache/dubbo/rpc/RpcInvocation.java   |  2 +-
 .../org/apache/dubbo/rpc/filter/GenericFilter.java |  2 +-
 .../rpc/protocol/ProtocolSerializationWrapper.java |  2 +-
 .../org/apache/dubbo/rpc/support/RpcUtilsTest.java |  2 +-
 .../rpc/protocol/dubbo/CallbackServiceCodec.java   |  4 +-
 .../protocol/dubbo/DecodeableRpcInvocation.java    |  2 +-
 .../rpc/protocol/dubbo/ArgumentCallbackTest.java   |  8 ++--
 .../rpc/protocol/dubbo/DubboProtocolTest.java      |  6 +--
 .../dubbo/rpc/protocol/dubbo/MultiThreadTest.java  |  4 +-
 .../dubbo/rpc/protocol/dubbo/RpcFilterTest.java    |  2 +-
 .../dubbo/decode/DubboTelnetDecodeTest.java        |  6 +--
 .../dubbo/rpc/protocol/dubbo/support/EnumBak.java  |  6 +--
 .../dubbo/rpc/protocol/grpc/GrpcOptionsUtils.java  |  4 +-
 .../dubbo/rpc/protocol/grpc/GrpcProtocol.java      |  2 +-
 .../dubbo/rpc/protocol/grpc/GrpcProtocolTest.java  |  9 ++--
 .../dubbo/rpc/protocol/rest/RestProtocolTest.java  |  2 +-
 .../rpc/protocol/tri/AbstractServerStream.java     |  2 +-
 .../rpc/protocol/tri/TripleClientHandler.java      | 15 +++----
 .../tri/TripleHttp2FrameServerHandler.java         |  2 +-
 .../dubbo/rpc/protocol/tri/TripleProtocolTest.java |  7 ++--
 .../endpoint/metadata/DubboShutdownMetadata.java   |  2 +-
 .../test/spring/SpringJavaConfigBeanTest.java      |  3 +-
 83 files changed, 247 insertions(+), 211 deletions(-)

diff --git 
a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/governance/DefaultGovernanceRuleRepositoryImpl.java
 
b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/governance/DefaultGovernanceRuleRepositoryImpl.java
index dd86575..c0633cd 100644
--- 
a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/governance/DefaultGovernanceRuleRepositoryImpl.java
+++ 
b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/governance/DefaultGovernanceRuleRepositoryImpl.java
@@ -48,7 +48,7 @@ public class DefaultGovernanceRuleRepositoryImpl implements 
GovernanceRuleReposi
     }
 
     private DynamicConfiguration getDynamicConfiguration() {
-        return 
ApplicationModel.defaultModel().getEnvironment().getDynamicConfiguration().orElse(null);
+        return 
ApplicationModel.defaultModel().getApplicationEnvironment().getDynamicConfiguration().orElse(null);
     }
 
 }
diff --git 
a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/loadbalance/ShortestResponseLoadBalance.java
 
b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/loadbalance/ShortestResponseLoadBalance.java
index 4b59291..c0ecf61 100644
--- 
a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/loadbalance/ShortestResponseLoadBalance.java
+++ 
b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/loadbalance/ShortestResponseLoadBalance.java
@@ -45,7 +45,7 @@ public class ShortestResponseLoadBalance extends 
AbstractLoadBalance {
 
     public static final String NAME = "shortestresponse";
 
-    private static final int SLIDE_PERIOD = 
ApplicationModel.defaultModel().getEnvironment().getConfiguration().getInt(Constants.SHORTEST_RESPONSE_SLIDE_PERIOD,
 30_000);
+    private static final int SLIDE_PERIOD = 
ApplicationModel.defaultModel().getApplicationEnvironment().getConfiguration().getInt(Constants.SHORTEST_RESPONSE_SLIDE_PERIOD,
 30_000);
 
     private ConcurrentMap<RpcStatus, SlideWindowData> methodMap = new 
ConcurrentHashMap<>();
 
diff --git 
a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleManager.java
 
b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleManager.java
index 5e2edb4..6e988f9 100644
--- 
a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleManager.java
+++ 
b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleManager.java
@@ -40,7 +40,7 @@ public final class MeshRuleManager {
 
         MeshAppRuleListener meshAppRuleListener = new MeshAppRuleListener(app);
         String appRuleDataId = app + MESH_RULE_DATA_ID_SUFFIX;
-        DynamicConfiguration configuration = 
ApplicationModel.defaultModel().getEnvironment().getDynamicConfiguration()
+        DynamicConfiguration configuration = 
ApplicationModel.defaultModel().getApplicationEnvironment().getDynamicConfiguration()
             .orElse(null);
 
         Set<MeshEnvListener> envListeners = 
ExtensionLoader.getExtensionLoader(MeshEnvListener.class).getSupportedExtensionInstances();
diff --git 
a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleManagerTest.java
 
b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleManagerTest.java
index f75e58a..74be2fd 100644
--- 
a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleManagerTest.java
+++ 
b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleManagerTest.java
@@ -20,6 +20,7 @@ package org.apache.dubbo.rpc.cluster.router.mesh.route;
 import org.apache.dubbo.common.config.configcenter.DynamicConfiguration;
 import org.apache.dubbo.rpc.cluster.router.mesh.rule.VsDestinationGroup;
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
 import org.junit.jupiter.api.Test;
 import org.mockito.ArgumentCaptor;
 import org.mockito.Mockito;
@@ -38,11 +39,11 @@ public class MeshRuleManagerTest {
 
     @Test
     public void subscribeAppRule() {
-        Optional<DynamicConfiguration> before = 
ApplicationModel.defaultModel().getEnvironment().getDynamicConfiguration();
+        Optional<DynamicConfiguration> before = 
ApplicationModel.defaultModel().getApplicationEnvironment().getDynamicConfiguration();
         try {
             DynamicConfiguration dynamicConfiguration = 
mock(DynamicConfiguration.class);
 
-            
ApplicationModel.defaultModel().getEnvironment().setDynamicConfiguration(dynamicConfiguration);
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setDynamicConfiguration(dynamicConfiguration);
 
             MeshRuleManager.subscribeAppRule("test");
 
@@ -53,7 +54,7 @@ public class MeshRuleManagerTest {
 
             assertEquals("test.MESHAPPRULE", result);
         } finally {
-            
ApplicationModel.defaultModel().getEnvironment().setDynamicConfiguration(before.orElse(null));
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setDynamicConfiguration(before.orElse(null));
         }
 
 
@@ -61,11 +62,11 @@ public class MeshRuleManagerTest {
 
     @Test
     public void register() {
-        Optional<DynamicConfiguration> before = 
ApplicationModel.defaultModel().getEnvironment().getDynamicConfiguration();
+        Optional<DynamicConfiguration> before = 
ApplicationModel.defaultModel().getApplicationEnvironment().getDynamicConfiguration();
         try {
             DynamicConfiguration dynamicConfiguration = 
mock(DynamicConfiguration.class);
 
-            
ApplicationModel.defaultModel().getEnvironment().setDynamicConfiguration(dynamicConfiguration);
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setDynamicConfiguration(dynamicConfiguration);
 
             when(dynamicConfiguration.getConfig(anyString(), anyString(), 
anyLong())).thenReturn("apiVersion: service.dubbo.apache.org/v1alpha1\n" +
                     "kind: VirtualService\n" +
@@ -109,17 +110,17 @@ public class MeshRuleManagerTest {
             assertEquals(1, result.getVirtualServiceRuleList().size());
             assertEquals(0, result.getDestinationRuleList().size());
         } finally {
-            
ApplicationModel.defaultModel().getEnvironment().setDynamicConfiguration(before.orElse(null));
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setDynamicConfiguration(before.orElse(null));
         }
     }
 
     @Test
     public void unregister() {
-        Optional<DynamicConfiguration> before = 
ApplicationModel.defaultModel().getEnvironment().getDynamicConfiguration();
+        Optional<DynamicConfiguration> before = 
ApplicationModel.defaultModel().getApplicationEnvironment().getDynamicConfiguration();
         try {
             DynamicConfiguration dynamicConfiguration = 
mock(DynamicConfiguration.class);
 
-            
ApplicationModel.defaultModel().getEnvironment().setDynamicConfiguration(dynamicConfiguration);
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setDynamicConfiguration(dynamicConfiguration);
 
             when(dynamicConfiguration.getConfig(anyString(), anyString(), 
anyLong())).thenReturn("apiVersion: service.dubbo.apache.org/v1alpha1\n" +
                     "kind: VirtualService\n" +
@@ -154,7 +155,7 @@ public class MeshRuleManagerTest {
             MeshRuleManager.unregister(meshRuleRouter);
 
         } finally {
-            
ApplicationModel.defaultModel().getEnvironment().setDynamicConfiguration(before.orElse(null));
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setDynamicConfiguration(before.orElse(null));
         }
     }
 }
diff --git 
a/dubbo-common/src/main/java/org/apache/dubbo/common/config/ConfigurationUtils.java
 
b/dubbo-common/src/main/java/org/apache/dubbo/common/config/ConfigurationUtils.java
index 25db5df..0cd82a5 100644
--- 
a/dubbo-common/src/main/java/org/apache/dubbo/common/config/ConfigurationUtils.java
+++ 
b/dubbo-common/src/main/java/org/apache/dubbo/common/config/ConfigurationUtils.java
@@ -52,7 +52,7 @@ public class ConfigurationUtils {
      * @return
      */
     public static Configuration getSystemConfiguration() {
-        return 
ApplicationModel.defaultModel().getEnvironment().getSystemConfiguration();
+        return 
ApplicationModel.defaultModel().getApplicationEnvironment().getSystemConfiguration();
     }
 
     /**
@@ -61,7 +61,7 @@ public class ConfigurationUtils {
      * @return
      */
     public static Configuration getEnvConfiguration() {
-        return 
ApplicationModel.defaultModel().getEnvironment().getEnvironmentConfiguration();
+        return 
ApplicationModel.defaultModel().getApplicationEnvironment().getEnvironmentConfiguration();
     }
 
     /**
@@ -72,11 +72,11 @@ public class ConfigurationUtils {
      * @return
      */
     public static Configuration getGlobalConfiguration() {
-        return 
ApplicationModel.defaultModel().getEnvironment().getConfiguration();
+        return 
ApplicationModel.defaultModel().getApplicationEnvironment().getConfiguration();
     }
 
     public static Configuration getDynamicGlobalConfiguration() {
-        return 
ApplicationModel.defaultModel().getEnvironment().getDynamicGlobalConfiguration();
+        return 
ApplicationModel.defaultModel().getApplicationEnvironment().getDynamicGlobalConfiguration();
     }
 
     // FIXME
diff --git 
a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/manager/DefaultExecutorRepository.java
 
b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/manager/DefaultExecutorRepository.java
index 54334fd..0769276 100644
--- 
a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/manager/DefaultExecutorRepository.java
+++ 
b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/manager/DefaultExecutorRepository.java
@@ -230,7 +230,7 @@ public class DefaultExecutorRepository implements 
ExecutorRepository, ExtensionA
     }
 
     private Integer getExportThreadNum() {
-        List<Integer> threadNum = 
ApplicationModel.defaultModel().getConfigManager().getProviders()
+        List<Integer> threadNum = 
ApplicationModel.defaultModel().getApplicationConfigManager().getProviders()
             .stream()
             .map(ProviderConfig::getExportThreadNum)
             .filter(k -> k != null && k > 0)
@@ -277,7 +277,7 @@ public class DefaultExecutorRepository implements 
ExecutorRepository, ExtensionA
     }
 
     private Integer getReferThreadNum() {
-        List<Integer> threadNum = 
ApplicationModel.defaultModel().getConfigManager().getConsumers()
+        List<Integer> threadNum = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConsumers()
             .stream()
             .map(ConsumerConfig::getReferThreadNum)
             .filter(k -> k != null && k > 0)
diff --git 
a/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractConfig.java 
b/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractConfig.java
index d41f073..0662a46 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractConfig.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractConfig.java
@@ -496,7 +496,7 @@ public abstract class AbstractConfig implements 
Serializable {
             // check and init before do refresh
             preProcessRefresh();
 
-            Environment environment = getApplicationModel().getEnvironment();
+            Environment environment = 
getApplicationModel().getApplicationEnvironment();
             List<Map<String, String>> configurationMaps = 
environment.getConfigurationMaps();
 
             // Search props starts with PREFIX in order
@@ -783,6 +783,6 @@ public abstract class AbstractConfig implements 
Serializable {
     }
 
     protected ConfigManager getConfigManager() {
-        return getApplicationModel().getConfigManager();
+        return getApplicationModel().getApplicationConfigManager();
     }
 }
diff --git 
a/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
 
b/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
index bc1d400..3607df4 100644
--- 
a/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
+++ 
b/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
@@ -42,12 +42,12 @@ import java.util.stream.Collectors;
 import static 
org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN;
 import static 
org.apache.dubbo.common.constants.CommonConstants.DUBBO_VERSION_KEY;
 import static 
org.apache.dubbo.common.constants.CommonConstants.INVOKER_LISTENER_KEY;
+import static org.apache.dubbo.common.constants.CommonConstants.NATIVE;
 import static org.apache.dubbo.common.constants.CommonConstants.PID_KEY;
 import static 
org.apache.dubbo.common.constants.CommonConstants.REFERENCE_FILTER_KEY;
 import static org.apache.dubbo.common.constants.CommonConstants.RELEASE_KEY;
 import static org.apache.dubbo.common.constants.CommonConstants.TAG_KEY;
 import static org.apache.dubbo.common.constants.CommonConstants.TIMESTAMP_KEY;
-import static org.apache.dubbo.common.constants.CommonConstants.NATIVE;
 
 
 /**
@@ -234,7 +234,7 @@ public abstract class AbstractInterfaceConfig extends 
AbstractMethodConfig {
     }
 
     protected Environment getEnvironment() {
-        return getApplicationModel().getEnvironment();
+        return getApplicationModel().getApplicationEnvironment();
     }
 
     @Override
diff --git 
a/dubbo-common/src/main/java/org/apache/dubbo/config/MethodConfig.java 
b/dubbo-common/src/main/java/org/apache/dubbo/config/MethodConfig.java
index 6b03ee6..2eb2870 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/config/MethodConfig.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/config/MethodConfig.java
@@ -230,7 +230,7 @@ public class MethodConfig extends AbstractMethodConfig {
     private void refreshArgument(ArgumentConfig argument, 
InmemoryConfiguration subPropsConfiguration) {
         if (argument.getIndex() != null && argument.getIndex() >= 0) {
             String prefix = argument.getIndex() + ".";
-            Environment environment = getApplicationModel().getEnvironment();
+            Environment environment = 
getApplicationModel().getApplicationEnvironment();
             java.lang.reflect.Method[] methods = 
argument.getClass().getMethods();
             for (java.lang.reflect.Method method : methods) {
                 if (MethodUtils.isSetter(method)) {
diff --git 
a/dubbo-common/src/main/java/org/apache/dubbo/config/context/ConfigManager.java 
b/dubbo-common/src/main/java/org/apache/dubbo/config/context/ConfigManager.java
index f69a67c..4cd79de 100644
--- 
a/dubbo-common/src/main/java/org/apache/dubbo/config/context/ConfigManager.java
+++ 
b/dubbo-common/src/main/java/org/apache/dubbo/config/context/ConfigManager.java
@@ -118,7 +118,7 @@ public class ConfigManager extends LifecycleAdapter 
implements FrameworkExt, Sco
 
     @Override
     public void initialize() throws IllegalStateException {
-        CompositeConfiguration configuration = 
applicationModel.getEnvironment().getConfiguration();
+        CompositeConfiguration configuration = 
applicationModel.getApplicationEnvironment().getConfiguration();
         String configModeStr = (String) 
configuration.getProperty(DUBBO_CONFIG_MODE);
         try {
             if (StringUtils.hasText(configModeStr)) {
diff --git 
a/dubbo-common/src/main/java/org/apache/dubbo/rpc/model/ApplicationModel.java 
b/dubbo-common/src/main/java/org/apache/dubbo/rpc/model/ApplicationModel.java
index e9dad56..dca4ba4 100644
--- 
a/dubbo-common/src/main/java/org/apache/dubbo/rpc/model/ApplicationModel.java
+++ 
b/dubbo-common/src/main/java/org/apache/dubbo/rpc/model/ApplicationModel.java
@@ -108,19 +108,19 @@ public class ApplicationModel extends ScopeModel {
     }
 
     public Collection<ConsumerModel> allConsumerModels() {
-        return getServiceRepository().getReferredServices();
+        return getApplicationServiceRepository().getReferredServices();
     }
 
     public Collection<ProviderModel> allProviderModels() {
-        return getServiceRepository().getExportedServices();
+        return getApplicationServiceRepository().getExportedServices();
     }
 
     public ProviderModel getProviderModel(String serviceKey) {
-        return getServiceRepository().lookupExportedService(serviceKey);
+        return 
getApplicationServiceRepository().lookupExportedService(serviceKey);
     }
 
     public ConsumerModel getConsumerModel(String serviceKey) {
-        return getServiceRepository().lookupReferredService(serviceKey);
+        return 
getApplicationServiceRepository().lookupReferredService(serviceKey);
     }
 
     public void initFrameworkExts() {
@@ -130,7 +130,12 @@ public class ApplicationModel extends ScopeModel {
         }
     }
 
-    public Environment getEnvironment() {
+    @Deprecated
+    public static Environment getEnvironment() {
+        return defaultModel().getApplicationEnvironment();
+    }
+
+    public Environment getApplicationEnvironment() {
         if (environment == null) {
             environment = (Environment) 
this.getExtensionLoader(FrameworkExt.class)
                 .getExtension(Environment.NAME);
@@ -138,7 +143,12 @@ public class ApplicationModel extends ScopeModel {
         return environment;
     }
 
-    public ConfigManager getConfigManager() {
+    @Deprecated
+    public static ConfigManager getConfigManager() {
+        return defaultModel().getApplicationConfigManager();
+    }
+
+    public ConfigManager getApplicationConfigManager() {
         if (configManager == null) {
             configManager = (ConfigManager) 
this.getExtensionLoader(FrameworkExt.class)
                 .getExtension(ConfigManager.NAME);
@@ -146,7 +156,12 @@ public class ApplicationModel extends ScopeModel {
         return configManager;
     }
 
-    public ServiceRepository getServiceRepository() {
+    @Deprecated
+    public static ServiceRepository getServiceRepository() {
+        return defaultModel().getApplicationServiceRepository();
+    }
+
+    public ServiceRepository getApplicationServiceRepository() {
         if (serviceRepository == null) {
             serviceRepository = (ServiceRepository) 
this.getExtensionLoader(FrameworkExt.class)
                 .getExtension(ServiceRepository.NAME);
@@ -154,21 +169,31 @@ public class ApplicationModel extends ScopeModel {
         return serviceRepository;
     }
 
-    public ExecutorRepository getExecutorRepository() {
+    @Deprecated
+    public static ExecutorRepository getExecutorRepository() {
+        return defaultModel().getApplicationExecutorRepository();
+    }
+
+    public ExecutorRepository getApplicationExecutorRepository() {
         return 
this.getExtensionLoader(ExecutorRepository.class).getDefaultExtension();
     }
 
-    public ApplicationConfig getApplicationConfig() {
-        return getConfigManager().getApplicationOrElseThrow();
+    @Deprecated
+    public static ApplicationConfig getApplicationConfig() {
+        return defaultModel().getCurrentConfig();
+    }
+
+    public ApplicationConfig getCurrentConfig() {
+        return getApplicationConfigManager().getApplicationOrElseThrow();
     }
 
     @Deprecated
     public static String getName() {
-        return defaultModel().getApplicationConfig().getName();
+        return defaultModel().getCurrentConfig().getName();
     }
 
     public String getApplicationName() {
-        return getApplicationConfig().getName();
+        return getCurrentConfig().getName();
     }
 
     public void addModule(ModuleModel model) {
diff --git 
a/dubbo-common/src/test/java/org/apache/dubbo/common/config/EnvironmentTest.java
 
b/dubbo-common/src/test/java/org/apache/dubbo/common/config/EnvironmentTest.java
index efac2da..2a93ca7 100644
--- 
a/dubbo-common/src/test/java/org/apache/dubbo/common/config/EnvironmentTest.java
+++ 
b/dubbo-common/src/test/java/org/apache/dubbo/common/config/EnvironmentTest.java
@@ -17,6 +17,7 @@
 package org.apache.dubbo.common.config;
 
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
 import org.junit.jupiter.api.Test;
 
 import java.util.LinkedHashMap;
@@ -31,7 +32,7 @@ public class EnvironmentTest {
 
     @Test
     public void testResolvePlaceholders1() {
-        Environment environment = 
ApplicationModel.defaultModel().getEnvironment();
+        Environment environment = 
ApplicationModel.defaultModel().getApplicationEnvironment();
 
         Map<String, String> externalMap = new LinkedHashMap<>();
         externalMap.put("zookeeper.address", "127.0.0.1");
diff --git 
a/dubbo-common/src/test/java/org/apache/dubbo/config/context/ConfigManagerTest.java
 
b/dubbo-common/src/test/java/org/apache/dubbo/config/context/ConfigManagerTest.java
index 5d703a1..a80fffd 100644
--- 
a/dubbo-common/src/test/java/org/apache/dubbo/config/context/ConfigManagerTest.java
+++ 
b/dubbo-common/src/test/java/org/apache/dubbo/config/context/ConfigManagerTest.java
@@ -49,7 +49,7 @@ import static org.junit.jupiter.api.Assertions.fail;
  */
 public class ConfigManagerTest {
 
-    private ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+    private ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
 
     @BeforeEach
     public void init() {
@@ -255,7 +255,7 @@ public class ConfigManagerTest {
         try {
             // test strict mode
             ApplicationModel.reset();
-            ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+            ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
             Assertions.assertEquals(ConfigMode.STRICT, 
configManager.getConfigMode());
 
             System.setProperty(DUBBO_CONFIG_MODE, ConfigMode.STRICT.name());
@@ -274,7 +274,7 @@ public class ConfigManagerTest {
             // test override mode
             System.setProperty(DUBBO_CONFIG_MODE, ConfigMode.OVERRIDE.name());
             ApplicationModel.reset();
-            configManager = ApplicationModel.defaultModel().getConfigManager();
+            configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
             Assertions.assertEquals(ConfigMode.OVERRIDE, 
configManager.getConfigMode());
 
             configManager.addConfig(applicationConfig1);
@@ -285,7 +285,7 @@ public class ConfigManagerTest {
             // test ignore mode
             System.setProperty(DUBBO_CONFIG_MODE, ConfigMode.IGNORE.name());
             ApplicationModel.reset();
-            configManager = ApplicationModel.defaultModel().getConfigManager();
+            configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
             Assertions.assertEquals(ConfigMode.IGNORE, 
configManager.getConfigMode());
 
             configManager.addConfig(applicationConfig1);
diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/DubboShutdownHook.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/DubboShutdownHook.java
index 68427dd..55ca3b5 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/DubboShutdownHook.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/DubboShutdownHook.java
@@ -57,7 +57,7 @@ public class DubboShutdownHook extends Thread {
 
     @Override
     public void run() {
-        String disableShutdownHookValue = (String) 
ApplicationModel.defaultModel().getEnvironment().getConfiguration()
+        String disableShutdownHookValue = (String) 
ApplicationModel.defaultModel().getApplicationEnvironment().getConfiguration()
             .getProperty(ConfigKeys.DUBBO_LIFECYCLE_DISABLE_SHUTDOWN_HOOK, 
"false");
         if (Boolean.parseBoolean(disableShutdownHookValue)) {
             if (logger.isWarnEnabled()) {
diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java
index 65c7154..6bf4129 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java
@@ -40,10 +40,10 @@ import org.apache.dubbo.rpc.cluster.Cluster;
 import org.apache.dubbo.rpc.cluster.directory.StaticDirectory;
 import org.apache.dubbo.rpc.cluster.support.ClusterUtils;
 import org.apache.dubbo.rpc.cluster.support.registry.ZoneAwareCluster;
-import org.apache.dubbo.rpc.model.ServiceDescriptor;
-import org.apache.dubbo.rpc.model.ServiceRepository;
 import org.apache.dubbo.rpc.model.AsyncMethodInfo;
 import org.apache.dubbo.rpc.model.ConsumerModel;
+import org.apache.dubbo.rpc.model.ServiceDescriptor;
+import org.apache.dubbo.rpc.model.ServiceRepository;
 import org.apache.dubbo.rpc.protocol.injvm.InjvmProtocol;
 import org.apache.dubbo.rpc.service.GenericService;
 import org.apache.dubbo.rpc.support.ProtocolUtils;
@@ -255,7 +255,7 @@ public class ReferenceConfig<T> extends 
ReferenceConfigBase<T> {
         Map<String, String> referenceParameters = appendConfig();
 
 
-        ServiceRepository repository = 
getApplicationModel().getServiceRepository();
+        ServiceRepository repository = 
getApplicationModel().getApplicationServiceRepository();
         ServiceDescriptor serviceDescriptor = 
repository.registerService(interfaceClass);
         repository.registerConsumer(
             serviceMetadata.getServiceKey(),
diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java
index 4b94872..254bfc4 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java
@@ -353,7 +353,7 @@ public class ServiceConfig<T> extends ServiceConfigBase<T> {
 
     @SuppressWarnings({"unchecked", "rawtypes"})
     private void doExportUrls() {
-        ServiceRepository repository = 
getApplicationModel().getServiceRepository();
+        ServiceRepository repository = 
getApplicationModel().getApplicationServiceRepository();
         ServiceDescriptor serviceDescriptor = 
repository.registerService(getInterfaceClass());
         repository.registerProvider(
                 getUniqueServiceName(),
diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/bootstrap/DubboBootstrap.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/bootstrap/DubboBootstrap.java
index 8c38076..300ab96 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/bootstrap/DubboBootstrap.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/bootstrap/DubboBootstrap.java
@@ -263,8 +263,8 @@ public class DubboBootstrap {
 
     private DubboBootstrap(ApplicationModel applicationModel) {
         this.applicationModel = applicationModel;
-        configManager = applicationModel.getConfigManager();
-        environment = applicationModel.getEnvironment();
+        configManager = applicationModel.getApplicationConfigManager();
+        environment = applicationModel.getApplicationEnvironment();
 
         executorRepository = 
getExtensionLoader(ExecutorRepository.class).getDefaultExtension();
         DubboShutdownHook.getDubboShutdownHook().register();
diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ConfigurableMetadataServiceExporter.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ConfigurableMetadataServiceExporter.java
index 3a45a04..8dbf910 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ConfigurableMetadataServiceExporter.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ConfigurableMetadataServiceExporter.java
@@ -152,7 +152,7 @@ public class ConfigurableMetadataServiceExporter implements 
MetadataServiceExpor
     }
 
     private ApplicationConfig getApplicationConfig() {
-        return applicationModel.getConfigManager().getApplication().get();
+        return 
applicationModel.getApplicationConfigManager().getApplication().get();
     }
 
     private ProtocolConfig generateMetadataProtocol() {
@@ -163,7 +163,7 @@ public class ConfigurableMetadataServiceExporter implements 
MetadataServiceExpor
             if (logger.isInfoEnabled()) {
                 logger.info("Metadata Service Port hasn't been set will use 
default protocol defined in protocols.");
             }
-            List<ProtocolConfig> defaultProtocols = 
applicationModel.getConfigManager().getDefaultProtocols();
+            List<ProtocolConfig> defaultProtocols = 
applicationModel.getApplicationConfigManager().getDefaultProtocols();
 
             ProtocolConfig dubboProtocol = findDubboProtocol(defaultProtocols);
             if (dubboProtocol != null) {
diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ServiceInstanceHostPortCustomizer.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ServiceInstanceHostPortCustomizer.java
index be79b1a..07d8ffa 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ServiceInstanceHostPortCustomizer.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ServiceInstanceHostPortCustomizer.java
@@ -47,7 +47,7 @@ public class ServiceInstanceHostPortCustomizer implements 
ServiceInstanceCustomi
         Set<URL> urls = writableMetadataService.getExportedServiceURLs();
         if (CollectionUtils.isNotEmpty(urls)) {
             ApplicationModel applicationModel = 
serviceInstance.getApplicationModel();
-            String preferredProtocol = 
applicationModel.getApplicationConfig().getProtocol();
+            String preferredProtocol = 
applicationModel.getCurrentConfig().getProtocol();
             if (preferredProtocol != null) {
                 for (URL exportedURL : urls) {
                     if (preferredProtocol.equals(exportedURL.getProtocol())) {
diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/utils/ReferenceConfigCache.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/utils/ReferenceConfigCache.java
index 1d71d13..33e4b7d 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/utils/ReferenceConfigCache.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/utils/ReferenceConfigCache.java
@@ -180,7 +180,7 @@ public class ReferenceConfigCache {
             return;
         }
 
-        ApplicationModel.defaultModel().getConfigManager().removeConfig(rc);
+        
ApplicationModel.defaultModel().getApplicationConfigManager().removeConfig(rc);
         rc.destroy();
 
         Map<String, Object> proxiesOftype = proxies.get(type);
@@ -222,7 +222,7 @@ public class ReferenceConfigCache {
 
         referredReferences.forEach((_k, referenceConfig) -> {
             referenceConfig.destroy();
-            
ApplicationModel.defaultModel().getConfigManager().removeConfig(referenceConfig);
+            
ApplicationModel.defaultModel().getApplicationConfigManager().removeConfig(referenceConfig);
         });
 
         proxies.forEach((_type, proxiesOfType) -> {
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/AbstractConfigTest.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/AbstractConfigTest.java
index c4a4860..8278220 100644
--- 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/AbstractConfigTest.java
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/AbstractConfigTest.java
@@ -331,8 +331,8 @@ public class AbstractConfigTest {
             external.put("dubbo.override.key", "external");
             // @Parameter(key="key2", useKeyAsProperty=true)
             external.put("dubbo.override.key2", "external");
-            ApplicationModel.defaultModel().getEnvironment().initialize();
-            
ApplicationModel.defaultModel().getEnvironment().setExternalConfigMap(external);
+            
ApplicationModel.defaultModel().getApplicationEnvironment().initialize();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setExternalConfigMap(external);
 
             SysProps.setProperty("dubbo.override.address", 
"system://127.0.0.1:2181");
             SysProps.setProperty("dubbo.override.protocol", "system");
@@ -350,7 +350,7 @@ public class AbstractConfigTest {
             Assertions.assertEquals("system", overrideConfig.getKey2());
         } finally {
             SysProps.clear();
-            ApplicationModel.defaultModel().getEnvironment().destroy();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().destroy();
         }
     }
 
@@ -375,14 +375,14 @@ public class AbstractConfigTest {
             Assertions.assertEquals("system", overrideConfig.getKey());
         } finally {
             SysProps.clear();
-            ApplicationModel.defaultModel().getEnvironment().destroy();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().destroy();
         }
     }
 
     @Test
     public void testRefreshProperties() throws Exception {
         try {
-            
ApplicationModel.defaultModel().getEnvironment().setExternalConfigMap(new 
HashMap<>());
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setExternalConfigMap(new
 HashMap<>());
             OverrideConfig overrideConfig = new OverrideConfig();
             overrideConfig.setAddress("override-config://127.0.0.1:2181");
             overrideConfig.setProtocol("override-config");
@@ -399,7 +399,7 @@ public class AbstractConfigTest {
             Assertions.assertEquals("override-config://", 
overrideConfig.getEscape());
             //Assertions.assertEquals("properties", 
overrideConfig.getUseKeyAsProperty());
         } finally {
-            ApplicationModel.defaultModel().getEnvironment().destroy();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().destroy();
             ConfigUtils.setProperties(null);
         }
     }
@@ -423,8 +423,8 @@ public class AbstractConfigTest {
             external.put("dubbo.override.key", "external");
             // @Parameter(key="key2", useKeyAsProperty=true)
             external.put("dubbo.override.key2", "external");
-            ApplicationModel.defaultModel().getEnvironment().initialize();
-            
ApplicationModel.defaultModel().getEnvironment().setExternalConfigMap(external);
+            
ApplicationModel.defaultModel().getApplicationEnvironment().initialize();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setExternalConfigMap(external);
 
             overrideConfig.refresh();
 
@@ -435,7 +435,7 @@ public class AbstractConfigTest {
             Assertions.assertEquals("external", overrideConfig.getKey());
             Assertions.assertEquals("external", overrideConfig.getKey2());
         } finally {
-            ApplicationModel.defaultModel().getEnvironment().destroy();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().destroy();
         }
     }
 
@@ -455,8 +455,8 @@ public class AbstractConfigTest {
             external.put("dubbo.overrides.override-id.key2", "external");
             external.put("dubbo.override.address", 
"external://127.0.0.1:2181");
             external.put("dubbo.override.exclude", "external");
-            ApplicationModel.defaultModel().getEnvironment().initialize();
-            
ApplicationModel.defaultModel().getEnvironment().setExternalConfigMap(external);
+            
ApplicationModel.defaultModel().getApplicationEnvironment().initialize();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setExternalConfigMap(external);
 
             // refresh config
             overrideConfig.refresh();
@@ -467,7 +467,7 @@ public class AbstractConfigTest {
             Assertions.assertEquals("external", overrideConfig.getKey());
             Assertions.assertEquals("external", overrideConfig.getKey2());
         } finally {
-            ApplicationModel.defaultModel().getEnvironment().destroy();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().destroy();
         }
     }
 
@@ -483,8 +483,8 @@ public class AbstractConfigTest {
 
             Map<String, String> external = new HashMap<>();
             external.put("dubbo.override.parameters", 
"[{key3:value3},{key4:value4},{key2:value5}]");
-            ApplicationModel.defaultModel().getEnvironment().initialize();
-            
ApplicationModel.defaultModel().getEnvironment().setExternalConfigMap(external);
+            
ApplicationModel.defaultModel().getApplicationEnvironment().initialize();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setExternalConfigMap(external);
 
             // refresh config
             overrideConfig.refresh();
@@ -501,7 +501,7 @@ public class AbstractConfigTest {
             Assertions.assertEquals("value4", 
overrideConfig.getParameters().get("key4"));
         } finally {
             SysProps.clear();
-            ApplicationModel.defaultModel().getEnvironment().destroy();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().destroy();
         }
     }
 
@@ -514,7 +514,7 @@ public class AbstractConfigTest {
             assertEquals("value00", 
overrideConfig.getParameters().get("key00"));
         } finally {
             SysProps.clear();
-            ApplicationModel.defaultModel().getEnvironment().destroy();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().destroy();
         }
     }
 
@@ -537,14 +537,14 @@ public class AbstractConfigTest {
                 e.printStackTrace();
             }
 
-            
ApplicationModel.defaultModel().getEnvironment().setExternalConfigMap(external);
+            
ApplicationModel.defaultModel().getApplicationEnvironment().setExternalConfigMap(external);
 
             overrideConfig.refresh();
 
             Assertions.assertEquals("value-from-config", 
overrideConfig.getNotConflictKey());
             Assertions.assertEquals("value-from-env", 
overrideConfig.getNotConflictKey2());
         } finally {
-            ApplicationModel.defaultModel().getEnvironment().destroy();
+            
ApplicationModel.defaultModel().getApplicationEnvironment().destroy();
 
         }
     }
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ConfigCenterConfigTest.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ConfigCenterConfigTest.java
index 61d7a97..427a265 100644
--- 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ConfigCenterConfigTest.java
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ConfigCenterConfigTest.java
@@ -22,6 +22,7 @@ import org.apache.dubbo.common.utils.ConfigUtils;
 import org.apache.dubbo.common.utils.StringUtils;
 import org.apache.dubbo.config.bootstrap.DubboBootstrap;
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeEach;
@@ -95,7 +96,7 @@ public class ConfigCenterConfigTest {
                 // ignore
             }
 
-            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getConfigManager().getConfigCenters();
+            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConfigCenters();
             Assertions.assertEquals(1, configCenters.size());
             Assertions.assertEquals(configCenter, 
configCenters.iterator().next());
             Assertions.assertEquals(zkAddr, configCenter.getAddress());
@@ -123,7 +124,7 @@ public class ConfigCenterConfigTest {
                     .configCenter(configCenter)
                     .start();
 
-            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getConfigManager().getConfigCenters();
+            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConfigCenters();
             Assertions.assertEquals(1, configCenters.size());
             Assertions.assertEquals(configCenter, 
configCenters.iterator().next());
             Assertions.assertEquals(zkAddr, configCenter.getAddress());
@@ -150,7 +151,7 @@ public class ConfigCenterConfigTest {
                     .configCenter(configCenter)
                     .initialize();
 
-            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getConfigManager().getConfigCenters();
+            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConfigCenters();
             Assertions.assertEquals(1, configCenters.size());
             Assertions.assertEquals(configCenter, 
configCenters.iterator().next());
             Assertions.assertEquals(1234, configCenter.getTimeout());
@@ -179,7 +180,7 @@ public class ConfigCenterConfigTest {
                     .configCenter(configCenter)
                     .initialize();
 
-            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getConfigManager().getConfigCenters();
+            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConfigCenters();
             Assertions.assertEquals(1, configCenters.size());
             Assertions.assertEquals(configCenter, 
configCenters.iterator().next());
             Assertions.assertEquals(3000L, configCenter.getTimeout());
@@ -207,7 +208,7 @@ public class ConfigCenterConfigTest {
                     .configCenter(configCenter)
                     .start();
 
-            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getConfigManager().getConfigCenters();
+            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConfigCenters();
             Assertions.assertEquals(1, configCenters.size());
             Assertions.assertEquals(configCenter, 
configCenters.iterator().next());
             Assertions.assertEquals(1234, configCenter.getTimeout());
@@ -237,7 +238,7 @@ public class ConfigCenterConfigTest {
                     .configCenter(configCenter)
                     .start();
 
-            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getConfigManager().getConfigCenters();
+            Collection<ConfigCenterConfig> configCenters = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConfigCenters();
             Assertions.assertEquals(1, configCenters.size());
             Assertions.assertEquals(configCenter, 
configCenters.iterator().next());
             Assertions.assertEquals(3000L, configCenter.getTimeout());
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ConsumerConfigTest.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ConsumerConfigTest.java
index 6ee61e9..313fa71 100644
--- 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ConsumerConfigTest.java
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ConsumerConfigTest.java
@@ -21,6 +21,7 @@ import org.apache.dubbo.common.utils.ConfigUtils;
 import org.apache.dubbo.config.api.DemoService;
 import org.apache.dubbo.config.bootstrap.DubboBootstrap;
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeEach;
@@ -118,7 +119,7 @@ public class ConsumerConfigTest {
                     .consumer(consumerConfig)
                     .initialize();
 
-            Collection<ConsumerConfig> consumers = 
ApplicationModel.defaultModel().getConfigManager().getConsumers();
+            Collection<ConsumerConfig> consumers = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConsumers();
             Assertions.assertEquals(1, consumers.size());
             Assertions.assertEquals(consumerConfig, 
consumers.iterator().next());
             Assertions.assertEquals(false, consumerConfig.isCheck());
@@ -148,7 +149,7 @@ public class ConsumerConfigTest {
                     .consumer(consumerConfig)
                     .initialize();
 
-            Collection<ConsumerConfig> consumers = 
ApplicationModel.defaultModel().getConfigManager().getConsumers();
+            Collection<ConsumerConfig> consumers = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConsumers();
             Assertions.assertEquals(1, consumers.size());
             Assertions.assertEquals(consumerConfig, 
consumers.iterator().next());
             Assertions.assertEquals(false, consumerConfig.isCheck());
@@ -181,7 +182,7 @@ public class ConsumerConfigTest {
                     .consumer(consumerConfig)
                     .initialize();
 
-            Collection<ConsumerConfig> consumers = 
ApplicationModel.defaultModel().getConfigManager().getConsumers();
+            Collection<ConsumerConfig> consumers = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConsumers();
             Assertions.assertEquals(1, consumers.size());
             Assertions.assertEquals(consumerConfig, 
consumers.iterator().next());
             Assertions.assertEquals(true, consumerConfig.isCheck());
@@ -211,7 +212,7 @@ public class ConsumerConfigTest {
                     .consumer(consumerConfig)
                     .initialize();
 
-            Collection<ConsumerConfig> consumers = 
ApplicationModel.defaultModel().getConfigManager().getConsumers();
+            Collection<ConsumerConfig> consumers = 
ApplicationModel.defaultModel().getApplicationConfigManager().getConsumers();
             Assertions.assertEquals(1, consumers.size());
             Assertions.assertEquals(consumerConfig, 
consumers.iterator().next());
             Assertions.assertEquals(false, consumerConfig.isCheck());
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
index ca88452..ece4e47 100644
--- 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
@@ -23,8 +23,8 @@ import org.apache.dubbo.config.annotation.Reference;
 import org.apache.dubbo.config.api.DemoService;
 import org.apache.dubbo.config.bootstrap.DubboBootstrap;
 import org.apache.dubbo.config.provider.impl.DemoServiceImpl;
-
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
 import org.apache.curator.test.TestingServer;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
@@ -58,7 +58,7 @@ public class ReferenceConfigTest {
 
         // preload
         ReferenceConfig preloadReferenceConfig = new ReferenceConfig();
-        ApplicationModel.defaultModel().getConfigManager();
+        ApplicationModel.defaultModel().getApplicationConfigManager();
         DubboBootstrap.getInstance();
     }
 
@@ -74,7 +74,7 @@ public class ReferenceConfigTest {
         ApplicationConfig application = new ApplicationConfig();
         application.setName("test-protocol-random-port");
         application.setEnableFileCache(false);
-        
ApplicationModel.defaultModel().getConfigManager().setApplication(application);
+        
ApplicationModel.defaultModel().getApplicationConfigManager().setApplication(application);
 
         RegistryConfig registry = new RegistryConfig();
         registry.setAddress(registryUrl);
@@ -118,7 +118,7 @@ public class ReferenceConfigTest {
         ApplicationConfig application = new ApplicationConfig();
         application.setName("test-reference-retry");
         application.setEnableFileCache(false);
-        
ApplicationModel.defaultModel().getConfigManager().setApplication(application);
+        
ApplicationModel.defaultModel().getApplicationConfigManager().setApplication(application);
 
         RegistryConfig registry = new RegistryConfig();
         registry.setAddress(registryUrl);
@@ -212,7 +212,7 @@ public class ReferenceConfigTest {
         configCenterConfig.setAddress("diamond://");
 
         testInitReferences(0, amount, applicationConfig, metadataReportConfig, 
configCenterConfig);
-        ApplicationModel.defaultModel().getConfigManager().clear();
+        ApplicationModel.defaultModel().getApplicationConfigManager().clear();
         testInitReferences(0, 1, applicationConfig, metadataReportConfig, 
configCenterConfig);
 
         long t1 = System.currentTimeMillis();
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/RegistryConfigTest.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/RegistryConfigTest.java
index 1352f19..b895d6d 100644
--- 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/RegistryConfigTest.java
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/RegistryConfigTest.java
@@ -17,10 +17,10 @@
 
 package org.apache.dubbo.config;
 
-import org.apache.dubbo.config.bootstrap.DubboBootstrap;
-import org.apache.dubbo.rpc.model.ApplicationModel;
 import org.apache.dubbo.common.URL;
 import org.apache.dubbo.common.utils.UrlUtils;
+import org.apache.dubbo.config.bootstrap.DubboBootstrap;
+import org.apache.dubbo.rpc.model.ApplicationModel;
 
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
@@ -227,7 +227,7 @@ public class RegistryConfigTest {
         DubboBootstrap.getInstance()
             .application("demo-app")
             .initialize();
-        Collection<RegistryConfig> registries = 
ApplicationModel.defaultModel().getConfigManager().getRegistries();
+        Collection<RegistryConfig> registries = 
ApplicationModel.defaultModel().getApplicationConfigManager().getRegistries();
         Assertions.assertEquals(1, registries.size());
         RegistryConfig registryConfig = registries.iterator().next();
         Assertions.assertEquals("zookeeper://localhost:2188", 
registryConfig.getAddress());
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ServiceConfigTest.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ServiceConfigTest.java
index 0fb444d..2affdf7 100644
--- 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ServiceConfigTest.java
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ServiceConfigTest.java
@@ -17,8 +17,6 @@
 
 package org.apache.dubbo.config;
 
-import com.google.common.collect.Lists;
-
 import org.apache.dubbo.common.URL;
 import org.apache.dubbo.common.extension.ExtensionLoader;
 import org.apache.dubbo.config.api.DemoService;
@@ -35,6 +33,7 @@ import org.apache.dubbo.rpc.Protocol;
 import org.apache.dubbo.rpc.model.ApplicationModel;
 import org.apache.dubbo.rpc.service.GenericService;
 
+import com.google.common.collect.Lists;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeEach;
@@ -71,10 +70,10 @@ import static org.hamcrest.Matchers.hasEntry;
 import static org.hamcrest.Matchers.hasKey;
 import static org.hamcrest.Matchers.hasSize;
 import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertSame;
 import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.mockito.Mockito.withSettings;
 
 public class ServiceConfigTest {
@@ -88,7 +87,7 @@ public class ServiceConfigTest {
 
     @BeforeEach
     public void setUp() throws Exception {
-        ApplicationModel.defaultModel().getConfigManager().clear();
+        ApplicationModel.defaultModel().getApplicationConfigManager().clear();
 
         MockProtocol2.delegate = protocolDelegate;
         MockRegistryFactory2.registry = registryDelegate;
@@ -151,7 +150,7 @@ public class ServiceConfigTest {
 
     @AfterEach
     public void tearDown() {
-        ApplicationModel.defaultModel().getConfigManager().clear();
+        ApplicationModel.defaultModel().getApplicationConfigManager().clear();
     }
 
     @Test
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/metadata/MetadataServiceExporterTest.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/metadata/MetadataServiceExporterTest.java
index f28a25a..95fc792 100644
--- 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/metadata/MetadataServiceExporterTest.java
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/metadata/MetadataServiceExporterTest.java
@@ -43,9 +43,9 @@ public class MetadataServiceExporterTest {
     @BeforeAll
     public static void init() {
         DubboBootstrap.reset();
-        ApplicationModel.defaultModel().getConfigManager().setApplication(new 
ApplicationConfig("Test"));
-        ApplicationModel.defaultModel().getConfigManager().addRegistry(new 
RegistryConfig("multicast://224.5.6.7:1234"));
-        ApplicationModel.defaultModel().getConfigManager().addProtocol(new 
ProtocolConfig("injvm"));
+        
ApplicationModel.defaultModel().getApplicationConfigManager().setApplication(new
 ApplicationConfig("Test"));
+        
ApplicationModel.defaultModel().getApplicationConfigManager().addRegistry(new 
RegistryConfig("multicast://224.5.6.7:1234"));
+        
ApplicationModel.defaultModel().getApplicationConfigManager().addProtocol(new 
ProtocolConfig("injvm"));
     }
 
     @AfterAll
diff --git 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboConfigBeanInitializer.java
 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboConfigBeanInitializer.java
index 59db26e..f51bb35 100644
--- 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboConfigBeanInitializer.java
+++ 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboConfigBeanInitializer.java
@@ -16,8 +16,6 @@
  */
 package org.apache.dubbo.config.spring.context;
 
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
 import org.apache.dubbo.config.AbstractConfig;
 import org.apache.dubbo.config.ApplicationConfig;
 import org.apache.dubbo.config.ConsumerConfig;
@@ -33,6 +31,9 @@ import org.apache.dubbo.config.context.ConfigManager;
 import org.apache.dubbo.config.spring.ConfigCenterBean;
 import org.apache.dubbo.config.spring.reference.ReferenceBeanManager;
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.springframework.beans.BeansException;
 import org.springframework.beans.FatalBeanException;
 import org.springframework.beans.factory.BeanFactory;
@@ -73,7 +74,7 @@ public class DubboConfigBeanInitializer implements 
BeanFactoryAware, Initializin
 
     private void init() {
         if (initialized.compareAndSet(false, true)) {
-            configManager = ApplicationModel.defaultModel().getConfigManager();
+            configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
             referenceBeanManager = 
beanFactory.getBean(ReferenceBeanManager.BEAN_NAME, ReferenceBeanManager.class);
             try {
                 prepareDubboConfigBeans();
diff --git 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboInfraBeanRegisterPostProcessor.java
 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboInfraBeanRegisterPostProcessor.java
index f6c9b19..0f79d22 100644
--- 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboInfraBeanRegisterPostProcessor.java
+++ 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboInfraBeanRegisterPostProcessor.java
@@ -22,6 +22,7 @@ import 
org.apache.dubbo.config.spring.extension.SpringExtensionInjector;
 import org.apache.dubbo.config.spring.util.DubboBeanUtils;
 import org.apache.dubbo.config.spring.util.EnvironmentUtils;
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
 import org.springframework.beans.BeansException;
 import 
org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
 import org.springframework.beans.factory.support.BeanDefinitionRegistry;
@@ -74,10 +75,10 @@ public class DubboInfraBeanRegisterPostProcessor implements 
BeanDefinitionRegist
         // Extract dubbo props from Spring env and put them to app config
         ConfigurableEnvironment environment = (ConfigurableEnvironment) 
applicationContext.getEnvironment();
         SortedMap<String, String> dubboProperties = 
EnvironmentUtils.filterDubboProperties(environment);
-        
ApplicationModel.defaultModel().getEnvironment().setAppConfigMap(dubboProperties);
+        
ApplicationModel.defaultModel().getApplicationEnvironment().setAppConfigMap(dubboProperties);
 
         // register ConfigManager singleton
-        beanFactory.registerSingleton(ConfigManager.BEAN_NAME, 
ApplicationModel.defaultModel().getConfigManager());
+        beanFactory.registerSingleton(ConfigManager.BEAN_NAME, 
ApplicationModel.defaultModel().getApplicationConfigManager());
     }
 
     @Override
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ConfigTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ConfigTest.java
index 35559f7..2b6b3d8 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ConfigTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ConfigTest.java
@@ -53,10 +53,10 @@ import org.apache.dubbo.rpc.RpcException;
 import org.apache.dubbo.rpc.model.ApplicationModel;
 import org.apache.dubbo.rpc.service.GenericService;
 
+import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeAll;
-import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
@@ -135,10 +135,10 @@ public class ConfigTest {
         try {
             ctx.start();
 
-            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getServiceRepository().getProviderUrlsWithoutGroup();
+            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getApplicationServiceRepository().getProviderUrlsWithoutGroup();
             // clear config manager
             DubboBootstrap.reset(false);
-            
ApplicationModel.defaultModel().getServiceRepository().setProviderUrlsWithoutGroup(tmp);
+            
ApplicationModel.defaultModel().getApplicationServiceRepository().setProviderUrlsWithoutGroup(tmp);
 
             DemoService demoService = refer("dubbo://127.0.0.1:20887");
             String hello = demoService.sayName("hello");
@@ -245,10 +245,10 @@ public class ConfigTest {
         try {
             ctx.start();
 
-            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getServiceRepository().getProviderUrlsWithoutGroup();
+            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getApplicationServiceRepository().getProviderUrlsWithoutGroup();
             // clear config manager
             DubboBootstrap.reset(false);
-            
ApplicationModel.defaultModel().getServiceRepository().setProviderUrlsWithoutGroup(tmp);
+            
ApplicationModel.defaultModel().getApplicationServiceRepository().setProviderUrlsWithoutGroup(tmp);
 
             DemoService demoService = refer("dubbo://127.0.0.1:20881");
             String hello = demoService.sayName("hello");
@@ -487,10 +487,10 @@ public class ConfigTest {
         try {
             providerContext.start();
 
-            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getServiceRepository().getProviderUrlsWithoutGroup();
+            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getApplicationServiceRepository().getProviderUrlsWithoutGroup();
             // clear config manager
             DubboBootstrap.reset(false);
-            
ApplicationModel.defaultModel().getServiceRepository().setProviderUrlsWithoutGroup(tmp);
+            
ApplicationModel.defaultModel().getApplicationServiceRepository().setProviderUrlsWithoutGroup(tmp);
 
             ClassPathXmlApplicationContext ctx = new 
ClassPathXmlApplicationContext(resourcePath + "/init-reference.xml",
                     resourcePath + "/init-reference-properties.xml");
@@ -732,7 +732,7 @@ public class ConfigTest {
         ClassPathXmlApplicationContext providerContext = new 
ClassPathXmlApplicationContext(resourcePath + "/override-protocol.xml");
         try {
             providerContext.start();
-            ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+            ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
             ProtocolConfig protocol = configManager.getProtocol("dubbo").get();
             assertEquals(20812, protocol.getPort());
         } finally {
@@ -748,7 +748,7 @@ public class ConfigTest {
                 "/override-multi-protocol.xml");
         try {
             providerContext.start();
-            ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+            ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
 
             ProtocolConfig dubboProtocol = 
configManager.getProtocol("dubbo").get();
             assertEquals(20814, dubboProtocol.getPort().intValue());
@@ -841,7 +841,7 @@ public class ConfigTest {
             // set default value of check
             assertEquals(false, reference.shouldCheck());
 
-            ConsumerConfig defaultConsumer = 
ApplicationModel.defaultModel().getConfigManager().getDefaultConsumer().get();
+            ConsumerConfig defaultConsumer = 
ApplicationModel.defaultModel().getApplicationConfigManager().getDefaultConsumer().get();
             assertEquals(1234, defaultConsumer.getTimeout());
             assertEquals(false, defaultConsumer.isCheck());
         } finally {
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/JavaConfigBeanTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/JavaConfigBeanTest.java
index 1ce8a05..b3ccfdd 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/JavaConfigBeanTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/JavaConfigBeanTest.java
@@ -32,10 +32,11 @@ import 
org.apache.dubbo.config.spring.registrycenter.DefaultSingleRegistryCenter
 import org.apache.dubbo.config.spring.registrycenter.SingleRegistryCenter;
 import org.apache.dubbo.rpc.Constants;
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
+import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeAll;
-import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import 
org.springframework.context.annotation.AnnotationConfigApplicationContext;
@@ -88,7 +89,7 @@ public class JavaConfigBeanTest {
         try {
             consumerContext.start();
 
-            ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+            ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
             ApplicationConfig application = 
configManager.getApplication().get();
             Assertions.assertEquals(false, application.getQosEnable());
             Assertions.assertEquals("Tom", application.getOwner());
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/context/annotation/DubboComponentScanRegistrarTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/context/annotation/DubboComponentScanRegistrarTest.java
index a6f9b2a..6e25b8f 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/context/annotation/DubboComponentScanRegistrarTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/context/annotation/DubboComponentScanRegistrarTest.java
@@ -76,10 +76,10 @@ public class DubboComponentScanRegistrarTest {
         // Test @Transactional is present or not
         Assertions.assertNotNull(findAnnotation(beanClass, 
Transactional.class));
 
-        ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getServiceRepository().getProviderUrlsWithoutGroup();
+        ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getApplicationServiceRepository().getProviderUrlsWithoutGroup();
         // reset ConfigManager of provider context
         DubboBootstrap.reset(false);
-        
ApplicationModel.defaultModel().getServiceRepository().setProviderUrlsWithoutGroup(tmp);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().setProviderUrlsWithoutGroup(tmp);
 
         AnnotationConfigApplicationContext consumerContext = new 
AnnotationConfigApplicationContext();
 
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/context/annotation/EnableDubboConfigTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/context/annotation/EnableDubboConfigTest.java
index ee3c846..d934565 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/context/annotation/EnableDubboConfigTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/context/annotation/EnableDubboConfigTest.java
@@ -23,11 +23,11 @@ import org.apache.dubbo.config.MonitorConfig;
 import org.apache.dubbo.config.ProtocolConfig;
 import org.apache.dubbo.config.ProviderConfig;
 import org.apache.dubbo.config.RegistryConfig;
-
 import org.apache.dubbo.config.bootstrap.DubboBootstrap;
 import org.apache.dubbo.config.context.ConfigManager;
 import org.apache.dubbo.config.spring.registrycenter.ZooKeeperServer;
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeEach;
@@ -113,7 +113,7 @@ public class EnableDubboConfigTest {
         RegistryConfig registry2 = context.getBean("registry2", 
RegistryConfig.class);
         Assertions.assertEquals(2182, registry2.getPort());
 
-        ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+        ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
         Collection<ProtocolConfig> protocolConfigs = 
configManager.getProtocols();
         Assertions.assertEquals(3, protocolConfigs.size());
 
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/issues/issue7003/Issue7003Test.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/issues/issue7003/Issue7003Test.java
index 344d07c..72bb370 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/issues/issue7003/Issue7003Test.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/issues/issue7003/Issue7003Test.java
@@ -25,6 +25,7 @@ import 
org.apache.dubbo.config.spring.context.annotation.EnableDubbo;
 import 
org.apache.dubbo.config.spring.registrycenter.DefaultSingleRegistryCenter;
 import org.apache.dubbo.config.spring.registrycenter.SingleRegistryCenter;
 import org.apache.dubbo.rpc.model.ApplicationModel;
+
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeAll;
@@ -72,7 +73,7 @@ public class Issue7003Test {
             Map<String, ReferenceBean> referenceBeanMap = 
context.getBeansOfType(ReferenceBean.class);
             Assertions.assertEquals(1, referenceBeanMap.size());
 
-            Collection<ReferenceConfigBase<?>> references = 
ApplicationModel.defaultModel().getConfigManager().getReferences();
+            Collection<ReferenceConfigBase<?>> references = 
ApplicationModel.defaultModel().getApplicationConfigManager().getReferences();
             Assertions.assertEquals(1, references.size());
 
         } finally {
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer/PropertyConfigurerTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer/PropertyConfigurerTest.java
index 1cbfa9b..eb3c6cf 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer/PropertyConfigurerTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer/PropertyConfigurerTest.java
@@ -62,10 +62,10 @@ public class PropertyConfigurerTest {
         try {
             providerContext.start();
 
-            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getServiceRepository().getProviderUrlsWithoutGroup();
+            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getApplicationServiceRepository().getProviderUrlsWithoutGroup();
             // reset ConfigManager of provider context
             DubboBootstrap.reset(false);
-            
ApplicationModel.defaultModel().getServiceRepository().setProviderUrlsWithoutGroup(tmp);
+            
ApplicationModel.defaultModel().getApplicationServiceRepository().setProviderUrlsWithoutGroup(tmp);
 
             try {
                 Thread.sleep(1000);
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer2/PropertySourcesConfigurerTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer2/PropertySourcesConfigurerTest.java
index ad51e21..024dd17 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer2/PropertySourcesConfigurerTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer2/PropertySourcesConfigurerTest.java
@@ -68,10 +68,10 @@ public class PropertySourcesConfigurerTest {
             } catch (InterruptedException e) {
             }
 
-            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getServiceRepository().getProviderUrlsWithoutGroup();
+            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getApplicationServiceRepository().getProviderUrlsWithoutGroup();
             // reset ConfigManager of provider context
             DubboBootstrap.reset(false);
-            
ApplicationModel.defaultModel().getServiceRepository().setProviderUrlsWithoutGroup(tmp);
+            
ApplicationModel.defaultModel().getApplicationServiceRepository().setProviderUrlsWithoutGroup(tmp);
 
             // Resolve placeholder by PropertySourcesPlaceholderConfigurer in 
dubbo-consumer.xml, without import property source.
             AnnotationConfigApplicationContext context = new 
AnnotationConfigApplicationContext(ConsumerConfiguration.class);
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer3/PropertySourcesInJavaConfigTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer3/PropertySourcesInJavaConfigTest.java
index f8e3fb8..9690f65 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer3/PropertySourcesInJavaConfigTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/propertyconfigurer/consumer3/PropertySourcesInJavaConfigTest.java
@@ -78,10 +78,10 @@ public class PropertySourcesInJavaConfigTest {
             } catch (InterruptedException e) {
             }
 
-            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getServiceRepository().getProviderUrlsWithoutGroup();
+            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getApplicationServiceRepository().getProviderUrlsWithoutGroup();
             // reset ConfigManager of provider context
             DubboBootstrap.reset(false);
-            
ApplicationModel.defaultModel().getServiceRepository().setProviderUrlsWithoutGroup(tmp);
+            
ApplicationModel.defaultModel().getApplicationServiceRepository().setProviderUrlsWithoutGroup(tmp);
 
             // Resolve placeholder by import property sources
             AnnotationConfigApplicationContext context = new 
AnnotationConfigApplicationContext(ConsumerConfiguration.class, 
ImportPropertyConfiguration.class);
@@ -116,10 +116,10 @@ public class PropertySourcesInJavaConfigTest {
             } catch (InterruptedException e) {
             }
 
-            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getServiceRepository().getProviderUrlsWithoutGroup();
+            ConcurrentMap<String, Set<URL>> tmp = 
ApplicationModel.defaultModel().getApplicationServiceRepository().getProviderUrlsWithoutGroup();
             // reset ConfigManager of provider context
             DubboBootstrap.reset(false);
-            
ApplicationModel.defaultModel().getServiceRepository().setProviderUrlsWithoutGroup(tmp);
+            
ApplicationModel.defaultModel().getApplicationServiceRepository().setProviderUrlsWithoutGroup(tmp);
 
             // Resolve placeholder by custom 
PropertySourcesPlaceholderConfigurer bean
             AnnotationConfigApplicationContext context = new 
AnnotationConfigApplicationContext(ConsumerConfiguration.class, 
PropertyBeanConfiguration.class);
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/schema/DubboNamespaceHandlerTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/schema/DubboNamespaceHandlerTest.java
index aa31db2..ea99f13 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/schema/DubboNamespaceHandlerTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/schema/DubboNamespaceHandlerTest.java
@@ -127,7 +127,7 @@ public class DubboNamespaceHandlerTest {
         Map<String, ProtocolConfig> protocolConfigMap = 
ctx.getBeansOfType(ProtocolConfig.class);
         assertThat(protocolConfigMap.size(), is(2));
 
-        ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+        ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
         Collection<ProtocolConfig> protocolConfigs = 
configManager.getProtocols();
         assertThat(protocolConfigs.size(), is(2));
 
@@ -176,7 +176,7 @@ public class DubboNamespaceHandlerTest {
         ClassPathXmlApplicationContext ctx = new 
ClassPathXmlApplicationContext(resourcePath + "/provider-nested-service.xml");
         ctx.start();
 
-        ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+        ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
         Collection<ProviderConfig> providerConfigs = 
configManager.getProviders();
         Assertions.assertEquals(2, providerConfigs.size());
 
diff --git 
a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/report/MetadataReportInstance.java
 
b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/report/MetadataReportInstance.java
index 91e684e..c63b09a1 100644
--- 
a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/report/MetadataReportInstance.java
+++ 
b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/report/MetadataReportInstance.java
@@ -55,7 +55,7 @@ public class MetadataReportInstance {
                     .removeParameter(METADATA_REPORT_KEY)
                     .build();
         }
-        url = url.addParameterIfAbsent(APPLICATION_KEY, 
applicationModel.getApplicationConfig().getName());
+        url = url.addParameterIfAbsent(APPLICATION_KEY, 
applicationModel.getCurrentConfig().getName());
         String relatedRegistryId = config.getRegistry() == null ? DEFAULT_KEY 
: config.getRegistry();
 //        RegistryConfig registryConfig = 
applicationModel.getConfigManager().getRegistry(relatedRegistryId)
 //                .orElseThrow(() -> new IllegalStateException("Registry id " 
+ relatedRegistryId + " does not exist."));
diff --git 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/BaseOffline.java
 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/BaseOffline.java
index f762219..d194f51 100644
--- 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/BaseOffline.java
+++ 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/BaseOffline.java
@@ -34,7 +34,7 @@ import java.util.List;
 public class BaseOffline implements BaseCommand {
     private Logger logger = LoggerFactory.getLogger(OfflineInterface.class);
     public static RegistryFactory registryFactory = 
ExtensionLoader.getExtensionLoader(RegistryFactory.class).getAdaptiveExtension();
-    public static ServiceRepository serviceRepository = 
ApplicationModel.defaultModel().getServiceRepository();
+    public static ServiceRepository serviceRepository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
 
     @Override
     public String execute(CommandContext commandContext, String[] args) {
diff --git 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/BaseOnline.java
 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/BaseOnline.java
index b3d101b..350f539 100644
--- 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/BaseOnline.java
+++ 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/BaseOnline.java
@@ -35,7 +35,7 @@ import java.util.List;
 public class BaseOnline implements BaseCommand {
     private static final Logger logger = LoggerFactory.getLogger(Online.class);
     public static RegistryFactory registryFactory = 
ExtensionLoader.getExtensionLoader(RegistryFactory.class).getAdaptiveExtension();
-    public static ServiceRepository serviceRepository = 
ApplicationModel.defaultModel().getServiceRepository();
+    public static ServiceRepository serviceRepository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
 
     @Override
     public String execute(CommandContext commandContext, String[] args) {
diff --git 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Live.java
 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Live.java
index f29ed2c..696c3a1 100644
--- 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Live.java
+++ 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Live.java
@@ -33,7 +33,7 @@ public class Live implements BaseCommand {
     @Override
     public String execute(CommandContext commandContext, String[] args) {
         URL url = URL.valueOf("application://")
-                .addParameter(CommonConstants.QOS_LIVE_PROBE_EXTENSION, 
ApplicationModel.defaultModel().getApplicationConfig().getLivenessProbe());
+                .addParameter(CommonConstants.QOS_LIVE_PROBE_EXTENSION, 
ApplicationModel.defaultModel().getCurrentConfig().getLivenessProbe());
         List<LivenessProbe> livenessProbes = 
ExtensionLoader.getExtensionLoader(LivenessProbe.class)
                 .getActivateExtension(url, 
CommonConstants.QOS_LIVE_PROBE_EXTENSION);
         if (!livenessProbes.isEmpty()) {
diff --git 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Ready.java
 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Ready.java
index 461785e..44bc789 100644
--- 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Ready.java
+++ 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Ready.java
@@ -33,7 +33,7 @@ public class Ready implements BaseCommand {
     @Override
     public String execute(CommandContext commandContext, String[] args) {
         URL url = URL.valueOf("application://")
-                .addParameter(CommonConstants.QOS_READY_PROBE_EXTENSION, 
ApplicationModel.defaultModel().getApplicationConfig().getReadinessProbe());
+                .addParameter(CommonConstants.QOS_READY_PROBE_EXTENSION, 
ApplicationModel.defaultModel().getCurrentConfig().getReadinessProbe());
         List<ReadinessProbe> readinessProbes = 
ExtensionLoader.getExtensionLoader(ReadinessProbe.class)
                 .getActivateExtension(url, 
CommonConstants.QOS_READY_PROBE_EXTENSION);
         if (!readinessProbes.isEmpty()) {
diff --git 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Startup.java
 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Startup.java
index 6045253..2c9fed2 100644
--- 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Startup.java
+++ 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/Startup.java
@@ -33,7 +33,7 @@ public class Startup implements BaseCommand {
     @Override
     public String execute(CommandContext commandContext, String[] args) {
         URL url = URL.valueOf("application://")
-                .addParameter(CommonConstants.QOS_STARTUP_PROBE_EXTENSION, 
ApplicationModel.defaultModel().getApplicationConfig().getStartupProbe());
+                .addParameter(CommonConstants.QOS_STARTUP_PROBE_EXTENSION, 
ApplicationModel.defaultModel().getCurrentConfig().getStartupProbe());
         List<StartupProbe> startupProbes = 
ExtensionLoader.getExtensionLoader(StartupProbe.class)
                 .getActivateExtension(url, 
CommonConstants.QOS_STARTUP_PROBE_EXTENSION);
         if (!startupProbes.isEmpty()) {
diff --git 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/probe/impl/ProviderReadinessProbe.java
 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/probe/impl/ProviderReadinessProbe.java
index 82f8e54..25ed890 100644
--- 
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/probe/impl/ProviderReadinessProbe.java
+++ 
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/probe/impl/ProviderReadinessProbe.java
@@ -27,7 +27,7 @@ import java.util.List;
 
 @Activate
 public class ProviderReadinessProbe implements ReadinessProbe {
-    private static ServiceRepository serviceRepository = 
ApplicationModel.defaultModel().getServiceRepository();
+    private static ServiceRepository serviceRepository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
 
     @Override
     public boolean check() {
diff --git 
a/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/InvokeTelnetTest.java
 
b/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/InvokeTelnetTest.java
index b78f818..9295781 100644
--- 
a/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/InvokeTelnetTest.java
+++ 
b/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/InvokeTelnetTest.java
@@ -46,7 +46,7 @@ public class InvokeTelnetTest {
     private Channel mockChannel;
     private CommandContext mockCommandContext;
     private final DefaultAttributeMap defaultAttributeMap = new 
DefaultAttributeMap();
-    private final ServiceRepository repository = 
ApplicationModel.defaultModel().getServiceRepository();
+    private final ServiceRepository repository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
 
     @BeforeEach
     public void setup() {
diff --git 
a/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/SelectTelnetTest.java
 
b/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/SelectTelnetTest.java
index 23d9298..867a0cd 100644
--- 
a/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/SelectTelnetTest.java
+++ 
b/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/SelectTelnetTest.java
@@ -49,7 +49,7 @@ public class SelectTelnetTest {
     private Channel mockChannel;
     private CommandContext mockCommandContext;
 
-    private final ServiceRepository repository = 
ApplicationModel.defaultModel().getServiceRepository();
+    private final ServiceRepository repository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
     private final DefaultAttributeMap defaultAttributeMap = new 
DefaultAttributeMap();
     private List<Method> methods;
 
diff --git 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistryDirectory.java
 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistryDirectory.java
index 777990c..ba4f958 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistryDirectory.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistryDirectory.java
@@ -70,7 +70,7 @@ public class ServiceDiscoveryRegistryDirectory<T> extends 
DynamicDirectory<T> {
 
     @Override
     public void subscribe(URL url) {
-        if 
(applicationModel.getEnvironment().getConfiguration().convert(Boolean.class, 
Constants.ENABLE_CONFIGURATION_LISTEN, true)) {
+        if 
(applicationModel.getApplicationEnvironment().getConfiguration().convert(Boolean.class,
 Constants.ENABLE_CONFIGURATION_LISTEN, true)) {
             enableConfigurationListen = true;
             consumerConfigurationListener.addNotifyListener(this);
             referenceConfigurationListener = new 
ReferenceConfigurationListener(this.applicationModel, this, url);
@@ -84,7 +84,7 @@ public class ServiceDiscoveryRegistryDirectory<T> extends 
DynamicDirectory<T> {
     public void unSubscribe(URL url) {
         super.unSubscribe(url);
         this.originalUrls = null;
-        if 
(applicationModel.getEnvironment().getConfiguration().convert(Boolean.class, 
Constants.ENABLE_CONFIGURATION_LISTEN, true)) {
+        if 
(applicationModel.getApplicationEnvironment().getConfiguration().convert(Boolean.class,
 Constants.ENABLE_CONFIGURATION_LISTEN, true)) {
             consumerConfigurationListener.removeNotifyListener(this);
             referenceConfigurationListener.stop();
         }
diff --git 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/MetadataServiceNameMapping.java
 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/MetadataServiceNameMapping.java
index e86be90..4a63368 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/MetadataServiceNameMapping.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/MetadataServiceNameMapping.java
@@ -51,7 +51,7 @@ public class MetadataServiceNameMapping extends 
AbstractServiceNameMapping imple
     @Override
     public void map(URL url) {
         execute(() -> {
-            if 
(CollectionUtils.isEmpty(applicationModel.getConfigManager().getMetadataConfigs()))
 {
+            if 
(CollectionUtils.isEmpty(applicationModel.getApplicationConfigManager().getMetadataConfigs()))
 {
                 return;
             }
             String serviceInterface = url.getServiceInterface();
diff --git 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/StandardMetadataServiceURLBuilder.java
 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/StandardMetadataServiceURLBuilder.java
index 5622300..9de62fa 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/StandardMetadataServiceURLBuilder.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/StandardMetadataServiceURLBuilder.java
@@ -100,7 +100,7 @@ public class StandardMetadataServiceURLBuilder implements 
MetadataServiceURLBuil
     }
 
     private URL generateUrlWithoutMetadata(String serviceName, String host, 
Integer instancePort) {
-        Integer port = 
ApplicationModel.defaultModel().getApplicationConfig().getMetadataServicePort();
+        Integer port = 
ApplicationModel.defaultModel().getCurrentConfig().getMetadataServicePort();
         if (port == null || port < 1) {
             logger.warn("Metadata Service Port is not provided, since DNS is 
not able to negotiate the metadata port " +
                     "between Provider and Consumer, will try to use instance 
port as the default metadata port.");
diff --git 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/MigrationRuleListener.java
 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/MigrationRuleListener.java
index 2578557..b903b77 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/MigrationRuleListener.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/MigrationRuleListener.java
@@ -77,7 +77,7 @@ public class MigrationRuleListener implements 
RegistryProtocolListener, Configur
 
     private void init() {
         this.ruleKey = applicationModel.getApplicationName() + ".migration";
-        this.configuration = 
applicationModel.getEnvironment().getDynamicConfiguration().orElse(null);
+        this.configuration = 
applicationModel.getApplicationEnvironment().getDynamicConfiguration().orElse(null);
 
         if (this.configuration != null) {
             logger.info("Listening for migration rules on dataId " + ruleKey + 
", group " + DUBBO_SERVICEDISCOVERY_MIGRATION);
@@ -95,7 +95,7 @@ public class MigrationRuleListener implements 
RegistryProtocolListener, Configur
             setRawRule(INIT);
         }
 
-        String localRawRule = 
applicationModel.getEnvironment().getLocalMigrationRule();
+        String localRawRule = 
applicationModel.getApplicationEnvironment().getLocalMigrationRule();
         if (!StringUtils.isEmpty(localRawRule)) {
             Executors.newSingleThreadScheduledExecutor(new 
NamedThreadFactory("DubboMigrationRuleDelayWorker", true))
                 .schedule(() -> {
diff --git 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java
 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java
index a98a716..2b1d8a8 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java
@@ -357,7 +357,7 @@ public class RegistryProtocol implements Protocol, 
ScopeModelAware {
 
     private ProviderModel.RegisterStatedURL getStatedUrl(URL registryUrl, URL 
providerUrl) {
         ApplicationModel applicationModel = 
getApplicationModel(registryUrl.getScopeModel());
-        ProviderModel providerModel = applicationModel.getServiceRepository()
+        ProviderModel providerModel = 
applicationModel.getApplicationServiceRepository()
             .lookupExportedService(providerUrl.getServiceKey());
 
         List<ProviderModel.RegisterStatedURL> statedUrls = 
providerModel.getStatedUrl();
@@ -746,7 +746,7 @@ public class RegistryProtocol implements Protocol, 
ScopeModelAware {
             super(applicationModel);
             this.providerUrl = providerUrl;
             this.notifyListener = notifyListener;
-            if 
(applicationModel.getEnvironment().getConfiguration().convert(Boolean.class, 
ENABLE_CONFIGURATION_LISTEN, true)) {
+            if 
(applicationModel.getApplicationEnvironment().getConfiguration().convert(Boolean.class,
 ENABLE_CONFIGURATION_LISTEN, true)) {
                 this.initWith(DynamicConfiguration.getRuleKey(providerUrl) + 
CONFIGURATORS_SUFFIX);
             }
         }
@@ -765,7 +765,7 @@ public class RegistryProtocol implements Protocol, 
ScopeModelAware {
 
         public ProviderConfigurationListener(ApplicationModel 
applicationModel) {
             super(applicationModel);
-            if 
(applicationModel.getEnvironment().getConfiguration().convert(Boolean.class, 
ENABLE_CONFIGURATION_LISTEN, true)) {
+            if 
(applicationModel.getApplicationEnvironment().getConfiguration().convert(Boolean.class,
 ENABLE_CONFIGURATION_LISTEN, true)) {
                 this.initWith(applicationModel.getApplicationName() + 
CONFIGURATORS_SUFFIX);
             }
         }
@@ -835,7 +835,7 @@ public class RegistryProtocol implements Protocol, 
ScopeModelAware {
                 NotifyListener listener = 
RegistryProtocol.this.overrideListeners.remove(subscribeUrl);
                 registry.unsubscribe(subscribeUrl, listener);
                 ApplicationModel applicationModel = 
getApplicationModel(registerUrl.getScopeModel());
-                if 
(applicationModel.getEnvironment().getConfiguration().convert(Boolean.class, 
ENABLE_CONFIGURATION_LISTEN, true)) {
+                if 
(applicationModel.getApplicationEnvironment().getConfiguration().convert(Boolean.class,
 ENABLE_CONFIGURATION_LISTEN, true)) {
                     
applicationModel.getExtensionLoader(GovernanceRuleRepository.class).getDefaultExtension()
                         .removeListener(subscribeUrl.getServiceKey() + 
CONFIGURATORS_SUFFIX,
                             
serviceConfigurationListeners.get(subscribeUrl.getServiceKey()));
diff --git 
a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/migration/MigrationInvokerTest.java
 
b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/migration/MigrationInvokerTest.java
index 653fd85..327bfca 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/migration/MigrationInvokerTest.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/migration/MigrationInvokerTest.java
@@ -42,7 +42,7 @@ public class MigrationInvokerTest {
         ApplicationModel.reset();
         ApplicationConfig applicationConfig = new ApplicationConfig();
         applicationConfig.setName("Test");
-        
ApplicationModel.defaultModel().getConfigManager().setApplication(applicationConfig);
+        
ApplicationModel.defaultModel().getApplicationConfigManager().setApplication(applicationConfig);
     }
 
     @AfterEach
diff --git 
a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/migration/MigrationRuleListenerTest.java
 
b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/migration/MigrationRuleListenerTest.java
index 2b00b89..c2bde4b 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/migration/MigrationRuleListenerTest.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/migration/MigrationRuleListenerTest.java
@@ -46,11 +46,11 @@ public class MigrationRuleListenerTest {
         DynamicConfiguration dynamicConfiguration = 
Mockito.mock(DynamicConfiguration.class);
 
         ApplicationModel.reset();
-        
ApplicationModel.defaultModel().getEnvironment().setDynamicConfiguration(dynamicConfiguration);
-        
ApplicationModel.defaultModel().getEnvironment().setLocalMigrationRule(rule);
+        
ApplicationModel.defaultModel().getApplicationEnvironment().setDynamicConfiguration(dynamicConfiguration);
+        
ApplicationModel.defaultModel().getApplicationEnvironment().setLocalMigrationRule(rule);
         ApplicationConfig applicationConfig = new ApplicationConfig();
         applicationConfig.setName("demo-consumer");
-        
ApplicationModel.defaultModel().getConfigManager().setApplication(applicationConfig);
+        
ApplicationModel.defaultModel().getApplicationConfigManager().setApplication(applicationConfig);
 
         URL consumerURL = Mockito.mock(URL.class);
         Mockito.when(consumerURL.getServiceKey()).thenReturn("Test");
diff --git 
a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/support/ServiceOrientedRegistryTest.java
 
b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/support/ServiceOrientedRegistryTest.java
index db589f9..934ed20 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/support/ServiceOrientedRegistryTest.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/support/ServiceOrientedRegistryTest.java
@@ -23,8 +23,8 @@ import org.apache.dubbo.metadata.WritableMetadataService;
 import org.apache.dubbo.registry.NotifyListener;
 import org.apache.dubbo.registry.client.ServiceDiscoveryRegistry;
 import org.apache.dubbo.rpc.model.ApplicationModel;
-
 import org.apache.dubbo.rpc.model.ModuleModel;
+
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -89,7 +89,7 @@ public class ServiceOrientedRegistryTest {
         registry = ServiceDiscoveryRegistry.create(registryURL);
         metadataService = 
WritableMetadataService.getDefaultExtension(scopeModel);
         notifyListener = new MyNotifyListener();
-        applicationModel.getConfigManager().setApplication(new 
ApplicationConfig("Test"));
+        applicationModel.getApplicationConfigManager().setApplication(new 
ApplicationConfig("Test"));
     }
 
     @Test
diff --git 
a/dubbo-registry/dubbo-registry-dns/src/test/java/org/apache/dubbo/registry/dns/DNSServiceDiscoveryTest.java
 
b/dubbo-registry/dubbo-registry-dns/src/test/java/org/apache/dubbo/registry/dns/DNSServiceDiscoveryTest.java
index becfca2..be426c7 100644
--- 
a/dubbo-registry/dubbo-registry-dns/src/test/java/org/apache/dubbo/registry/dns/DNSServiceDiscoveryTest.java
+++ 
b/dubbo-registry/dubbo-registry-dns/src/test/java/org/apache/dubbo/registry/dns/DNSServiceDiscoveryTest.java
@@ -61,7 +61,7 @@ public class DNSServiceDiscoveryTest {
     public void setup() {
         DubboBootstrap.reset();
         ApplicationConfig applicationConfig = new ApplicationConfig("Test");
-        
ApplicationModel.defaultModel().getConfigManager().setApplication(applicationConfig);
+        
ApplicationModel.defaultModel().getApplicationConfigManager().setApplication(applicationConfig);
     }
 
     @AfterEach
@@ -113,7 +113,7 @@ public class DNSServiceDiscoveryTest {
         URL registryURL = URL.valueOf("dns://")
                 .addParameter(DNSClientConst.DNS_POLLING_CYCLE, 100)
                 .addParameter(Constants.ECHO_POLLING_CYCLE_KEY, 100);
-        applicationModel.getEnvironment().getAppExternalConfigMap()
+        applicationModel.getApplicationEnvironment().getAppExternalConfigMap()
                 .put(METADATA_PROXY_TIMEOUT_KEY, String.valueOf(500));
         dnsServiceDiscovery.initialize(registryURL);
 
@@ -124,7 +124,7 @@ public class DNSServiceDiscoveryTest {
         dnsServiceDiscovery.register(serviceInstance);
 
         int port = NetUtils.getAvailablePort();
-        applicationModel.getApplicationConfig().setMetadataServicePort(port);
+        applicationModel.getCurrentConfig().setMetadataServicePort(port);
 
         WritableMetadataService spiedMetadataService = 
Mockito.spy(metadataService);
 
@@ -166,7 +166,7 @@ public class DNSServiceDiscoveryTest {
         serviceConfig.unexport();
 
         dnsServiceDiscovery.destroy();
-        applicationModel.getEnvironment().getAppExternalConfigMap()
+        applicationModel.getApplicationEnvironment().getAppExternalConfigMap()
                 .remove(METADATA_PROXY_TIMEOUT_KEY);
     }
 
diff --git 
a/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/ZookeeperServiceDiscoveryChangeWatcher.java
 
b/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/ZookeeperServiceDiscoveryChangeWatcher.java
index f9c1427..66426d2 100644
--- 
a/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/ZookeeperServiceDiscoveryChangeWatcher.java
+++ 
b/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/ZookeeperServiceDiscoveryChangeWatcher.java
@@ -22,9 +22,9 @@ import org.apache.dubbo.registry.client.ServiceDiscovery;
 import org.apache.dubbo.registry.client.ServiceInstance;
 import org.apache.dubbo.registry.client.event.ServiceInstancesChangedEvent;
 import 
org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener;
+import org.apache.dubbo.rpc.model.ApplicationModel;
 
 import org.apache.curator.framework.api.CuratorWatcher;
-import org.apache.dubbo.rpc.model.ApplicationModel;
 import org.apache.zookeeper.WatchedEvent;
 import org.apache.zookeeper.Watcher;
 
@@ -65,7 +65,7 @@ public class ZookeeperServiceDiscoveryChangeWatcher 
implements CuratorWatcher {
         this.serviceName = serviceName;
         this.path = path;
         this.latch = latch;
-        this.notifier = new 
RegistryNotifier(zookeeperServiceDiscovery.getDelay(), 
ApplicationModel.defaultModel().getExecutorRepository().getServiceDiscoveryAddressNotificationExecutor())
 {
+        this.notifier = new 
RegistryNotifier(zookeeperServiceDiscovery.getDelay(), 
ApplicationModel.defaultModel().getApplicationExecutorRepository().getServiceDiscoveryAddressNotificationExecutor())
 {
             @Override
             protected void doNotify(Object rawAddresses) {
                 listeners.forEach(listener -> 
listener.onEvent((ServiceInstancesChangedEvent)rawAddresses));
diff --git 
a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/NettyEventLoopFactory.java
 
b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/NettyEventLoopFactory.java
index 3871f54..ec54e96 100644
--- 
a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/NettyEventLoopFactory.java
+++ 
b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/NettyEventLoopFactory.java
@@ -55,7 +55,7 @@ public class NettyEventLoopFactory {
     }
 
     private static boolean shouldEpoll() {
-        Configuration configuration = 
ApplicationModel.defaultModel().getEnvironment().getConfiguration();
+        Configuration configuration = 
ApplicationModel.defaultModel().getApplicationEnvironment().getConfiguration();
         if (configuration.getBoolean("netty.epoll.enable", false)) {
             String osName = configuration.getString("os.name");
             return osName.toLowerCase().contains("linux") && 
Epoll.isAvailable();
diff --git 
a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/SslContexts.java
 
b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/SslContexts.java
index fc2958c..e40d5fc 100644
--- 
a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/SslContexts.java
+++ 
b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/SslContexts.java
@@ -39,7 +39,7 @@ public class SslContexts {
     private static final Logger logger = 
LoggerFactory.getLogger(SslContexts.class);
 
     public static SslContext buildServerSslContext(URL url) {
-        ConfigManager globalConfigManager = 
ApplicationModel.defaultModel().getConfigManager();
+        ConfigManager globalConfigManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
         SslConfig sslConfig = globalConfigManager.getSsl().orElseThrow(() -> 
new IllegalStateException("Ssl enabled, but no ssl cert information 
provided!"));
 
         SslContextBuilder sslClientContextBuilder;
@@ -68,7 +68,7 @@ public class SslContexts {
     }
 
     public static SslContext buildClientSslContext(URL url) {
-        ConfigManager globalConfigManager = 
ApplicationModel.defaultModel().getConfigManager();
+        ConfigManager globalConfigManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
         SslConfig sslConfig = globalConfigManager.getSsl().orElseThrow(() -> 
new IllegalStateException("Ssl enabled, but no ssl cert information 
provided!"));
 
         SslContextBuilder builder = SslContextBuilder.forClient();
@@ -98,7 +98,7 @@ public class SslContexts {
     }
 
     private static SslConfig getSslConfig() {
-        return 
ApplicationModel.defaultModel().getConfigManager().getSsl().orElseThrow(() -> 
new IllegalStateException("Ssl enabled, but no ssl cert information 
provided!"));
+        return 
ApplicationModel.defaultModel().getApplicationConfigManager().getSsl().orElseThrow(()
 -> new IllegalStateException("Ssl enabled, but no ssl cert information 
provided!"));
     }
 
     /**
diff --git 
a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/CodecSupport.java
 
b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/CodecSupport.java
index a10a3a5..03e2ac6 100644
--- 
a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/CodecSupport.java
+++ 
b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/CodecSupport.java
@@ -158,7 +158,7 @@ public class CodecSupport {
     }
 
     public static void checkSerialization(String path, String version, Byte 
id) throws IOException {
-        ServiceRepository repository = 
ApplicationModel.defaultModel().getServiceRepository();
+        ServiceRepository repository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
         Set<URL> urls = 
repository.lookupRegisteredProviderUrlsWithoutGroup(keyWithoutGroup(path, 
version));
         if (CollectionUtils.isEmpty(urls)) {
             throw new IOException("Service " + path + " with version " + 
version + " not found, invocation rejected.");
diff --git 
a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyEventLoopFactory.java
 
b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyEventLoopFactory.java
index c313d81..ade8754 100644
--- 
a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyEventLoopFactory.java
+++ 
b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyEventLoopFactory.java
@@ -49,7 +49,7 @@ public class NettyEventLoopFactory {
     }
 
     private static boolean shouldEpoll() {
-        Configuration configuration = 
ApplicationModel.defaultModel().getEnvironment().getConfiguration();
+        Configuration configuration = 
ApplicationModel.defaultModel().getApplicationEnvironment().getConfiguration();
         if (configuration.getBoolean("netty.epoll.enable", false)) {
             String osName = configuration.getString("os.name");
             return osName.toLowerCase().contains("linux") && 
Epoll.isAvailable();
diff --git 
a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcInvocation.java 
b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcInvocation.java
index 73bc8cb..5905549 100644
--- 
a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcInvocation.java
+++ 
b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcInvocation.java
@@ -150,7 +150,7 @@ public class RpcInvocation implements Invocation, 
Serializable {
     }
 
     private void initParameterDesc() {
-        ServiceRepository repository = 
ApplicationModel.defaultModel().getServiceRepository();
+        ServiceRepository repository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
         if (StringUtils.isNotEmpty(serviceName)) {
             ServiceDescriptor serviceDescriptor = 
repository.lookupService(serviceName);
             if (serviceDescriptor != null) {
diff --git 
a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java
 
b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java
index 0757245..8b7010a 100644
--- 
a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java
+++ 
b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java
@@ -108,7 +108,7 @@ public class GenericFilter implements Filter, 
Filter.Listener {
                 } else if (ProtocolUtils.isGsonGenericSerialization(generic)) {
                     args = getGsonGenericArgs(args, 
method.getGenericParameterTypes());
                 } else if (ProtocolUtils.isJavaGenericSerialization(generic)) {
-                    Configuration configuration = 
ApplicationModel.defaultModel().getEnvironment().getConfiguration();
+                    Configuration configuration = 
ApplicationModel.defaultModel().getApplicationEnvironment().getConfiguration();
                     if 
(!configuration.getBoolean(CommonConstants.ENABLE_NATIVE_JAVA_GENERIC_SERIALIZE,
 false)) {
                         String notice = "Trigger the safety barrier! " +
                                 "Native Java Serializer is not allowed by 
default." +
diff --git 
a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolSerializationWrapper.java
 
b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolSerializationWrapper.java
index 544bb3a..6d97d18 100644
--- 
a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolSerializationWrapper.java
+++ 
b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolSerializationWrapper.java
@@ -43,7 +43,7 @@ public class ProtocolSerializationWrapper implements Protocol 
{
 
     @Override
     public <T> Exporter<T> export(Invoker<T> invoker) throws RpcException {
-        
getApplicationModel(invoker.getUrl().getScopeModel()).getServiceRepository().registerProviderUrl(invoker.getUrl());
+        
getApplicationModel(invoker.getUrl().getScopeModel()).getApplicationServiceRepository().registerProviderUrl(invoker.getUrl());
         return protocol.export(invoker);
     }
 
diff --git 
a/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/RpcUtilsTest.java
 
b/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/RpcUtilsTest.java
index 1ba88b6..b1718c3 100644
--- 
a/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/RpcUtilsTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/RpcUtilsTest.java
@@ -368,7 +368,7 @@ public class RpcUtilsTest {
         RpcInvocation inv = new RpcInvocation("testReturnType", serviceName, 
"", new Class<?>[] {String.class}, null, null, invoker, null);
         Assertions.assertFalse(RpcUtils.isReturnTypeFuture(inv));
 
-        ServiceRepository repository = 
ApplicationModel.defaultModel().getServiceRepository();
+        ServiceRepository repository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
         repository.registerService(demoServiceClass);
 
         inv = new RpcInvocation("testReturnType4", serviceName, "", new 
Class<?>[] {String.class}, null, null, invoker, null);
diff --git 
a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java
 
b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java
index 8605e4e..d49e24a 100644
--- 
a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java
+++ 
b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java
@@ -129,7 +129,7 @@ class CallbackServiceCodec {
             // one channel can have multiple callback instances, no need to 
re-export for different instance.
             if (!channel.hasAttribute(cacheKey)) {
                 if (!isInstancesOverLimit(channel, url, clazz.getName(), 
instid, false)) {
-                    
ApplicationModel.defaultModel().getServiceRepository().registerService(clazz);
+                    
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(clazz);
                     Invoker<?> invoker = PROXY_FACTORY.getInvoker(inst, clazz, 
exportUrl);
                     // should destroy resource?
                     Exporter<?> exporter = PROTOCOL.export(invoker);
@@ -167,7 +167,7 @@ class CallbackServiceCodec {
                 URL referurl = URL.valueOf("callback://" + url.getAddress() + 
"/" + clazz.getName() + "?" + INTERFACE_KEY + "=" + clazz.getName());
                 referurl = 
referurl.addParametersIfAbsent(url.getParameters()).removeParameter(METHODS_KEY);
                 if (!isInstancesOverLimit(channel, referurl, clazz.getName(), 
instid, true)) {
-                    
ApplicationModel.defaultModel().getServiceRepository().registerService(clazz);
+                    
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(clazz);
                     @SuppressWarnings("rawtypes")
                     Invoker<?> invoker = new ChannelWrappedInvoker(clazz, 
channel, referurl, String.valueOf(instid));
                     proxy = PROXY_FACTORY.getProxy(invoker);
diff --git 
a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DecodeableRpcInvocation.java
 
b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DecodeableRpcInvocation.java
index 133732d..add0437 100644
--- 
a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DecodeableRpcInvocation.java
+++ 
b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DecodeableRpcInvocation.java
@@ -132,7 +132,7 @@ public class DecodeableRpcInvocation extends RpcInvocation 
implements Codec, Dec
 //                if (RpcUtils.isGenericCall(path, getMethodName()) || 
RpcUtils.isEcho(path, getMethodName())) {
 //                    pts = ReflectUtils.desc2classArray(desc);
 //                } else {
-                ServiceRepository repository = 
ApplicationModel.defaultModel().getServiceRepository();
+                ServiceRepository repository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
                 ServiceDescriptor serviceDescriptor = 
repository.lookupService(path);
                 if (serviceDescriptor != null) {
                     MethodDescriptor methodDescriptor = 
serviceDescriptor.getMethod(getMethodName(), desc);
diff --git 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/ArgumentCallbackTest.java
 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/ArgumentCallbackTest.java
index 84236f2..c1eca18 100644
--- 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/ArgumentCallbackTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/ArgumentCallbackTest.java
@@ -59,14 +59,14 @@ public class ArgumentCallbackTest {
         // export one service first, to test connection sharing
         serviceURL = serviceURL.addParameter("connections", 1);
         URL hellourl = serviceURL.setPath(IHelloService.class.getName());
-        
ApplicationModel.defaultModel().getServiceRepository().registerService(IDemoService.class);
-        
ApplicationModel.defaultModel().getServiceRepository().registerService(IHelloService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(IDemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(IHelloService.class);
         hello_exporter = ProtocolUtils.export(new HelloServiceImpl(), 
IHelloService.class, hellourl);
         exporter = ProtocolUtils.export(new DemoServiceImpl(), 
IDemoService.class, serviceURL);
     }
 
     void referService() {
-        
ApplicationModel.defaultModel().getServiceRepository().registerService(IDemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(IDemoService.class);
         demoProxy = (IDemoService) ProtocolUtils.refer(IDemoService.class, 
consumerUrl);
     }
 
@@ -96,7 +96,7 @@ public class ArgumentCallbackTest {
     }
 
     public void destroyService() {
-        ApplicationModel.defaultModel().getServiceRepository().destroy();
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().destroy();
         demoProxy = null;
         try {
             if (exporter != null) exporter.unexport();
diff --git 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/DubboProtocolTest.java
 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/DubboProtocolTest.java
index a64f15a..2b36223 100644
--- 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/DubboProtocolTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/DubboProtocolTest.java
@@ -64,12 +64,12 @@ public class DubboProtocolTest {
     @AfterAll
     public static void after() {
         ProtocolUtils.closeAll();
-        
ApplicationModel.defaultModel().getServiceRepository().unregisterService(DemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().unregisterService(DemoService.class);
     }
 
     @BeforeAll
     public static void setup() {
-        
ApplicationModel.defaultModel().getServiceRepository().registerService(DemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(DemoService.class);
     }
 
     @Test
@@ -165,7 +165,7 @@ public class DubboProtocolTest {
 
         RemoteService remote = new RemoteServiceImpl();
 
-        
ApplicationModel.defaultModel().getServiceRepository().registerService(RemoteService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(RemoteService.class);
 
         int port = NetUtils.getAvailablePort();
         protocol.export(proxy.getInvoker(remote, RemoteService.class, 
URL.valueOf("dubbo://127.0.0.1:" + port + "/" + 
RemoteService.class.getName())));
diff --git 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/MultiThreadTest.java
 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/MultiThreadTest.java
index 6fa9351..e5f1ba2 100644
--- 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/MultiThreadTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/MultiThreadTest.java
@@ -44,12 +44,12 @@ public class MultiThreadTest {
     @AfterEach
     public void after() {
         ProtocolUtils.closeAll();
-        ApplicationModel.defaultModel().getServiceRepository().destroy();
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().destroy();
     }
 
     @Test
     public void testDubboMultiThreadInvoke() throws Exception {
-        
ApplicationModel.defaultModel().getServiceRepository().registerService("TestService",
 DemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService("TestService",
 DemoService.class);
         int port = NetUtils.getAvailablePort();
         Exporter<?> rpcExporter = protocol.export(proxy.getInvoker(new 
DemoServiceImpl(), DemoService.class, URL.valueOf("dubbo://127.0.0.1:" + port + 
"/TestService")));
 
diff --git 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/RpcFilterTest.java
 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/RpcFilterTest.java
index 00ce04a..aa6577b 100644
--- 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/RpcFilterTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/RpcFilterTest.java
@@ -45,7 +45,7 @@ public class RpcFilterTest {
         DemoService service = new DemoServiceImpl();
         int port = NetUtils.getAvailablePort();
         URL url = URL.valueOf("dubbo://127.0.0.1:" + port + 
"/org.apache.dubbo.rpc.protocol.dubbo.support.DemoService?service.filter=echo");
-        
ApplicationModel.defaultModel().getServiceRepository().registerService(DemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(DemoService.class);
         protocol.export(proxy.getInvoker(service, DemoService.class, url));
         service = proxy.getProxy(protocol.refer(DemoService.class, url));
         Assertions.assertEquals("123", service.echo("123"));
diff --git 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/decode/DubboTelnetDecodeTest.java
 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/decode/DubboTelnetDecodeTest.java
index 209b243..a66a844 100644
--- 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/decode/DubboTelnetDecodeTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/decode/DubboTelnetDecodeTest.java
@@ -69,13 +69,13 @@ public class DubboTelnetDecodeTest {
 
     @BeforeAll
     public static void setup() {
-        ApplicationModel.defaultModel().getServiceRepository().destroy();
-        
ApplicationModel.defaultModel().getServiceRepository().registerService(DemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().destroy();
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(DemoService.class);
     }
 
     @AfterAll
     public static void teardown() {
-        ApplicationModel.defaultModel().getServiceRepository().destroy();
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().destroy();
     }
 
     /**
diff --git 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/support/EnumBak.java
 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/support/EnumBak.java
index be002d7..94f8cbd 100644
--- 
a/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/support/EnumBak.java
+++ 
b/dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/support/EnumBak.java
@@ -47,7 +47,7 @@ public class EnumBak {
         );
         DemoService demo = new DemoServiceImpl();
 
-        
ApplicationModel.defaultModel().getServiceRepository().registerService("test", 
DemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService("test",
 DemoService.class);
 
         Invoker<DemoService> invoker = proxy.getInvoker(demo, 
DemoService.class, serviceurl);
         protocol.export(invoker);
@@ -93,7 +93,7 @@ public class EnumBak {
         );
         DemoService demo = new DemoServiceImpl();
 
-        
ApplicationModel.defaultModel().getServiceRepository().registerService("test", 
DemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService("test",
 DemoService.class);
 
         Invoker<DemoService> invoker = proxy.getInvoker(demo, 
DemoService.class, serviceurl);
         protocol.export(invoker);
@@ -117,7 +117,7 @@ public class EnumBak {
         URL consumerurl = URL.valueOf("dubbo://127.0.0.1:" + port + 
"/test?timeout=" + Integer.MAX_VALUE
         );
 
-        
ApplicationModel.defaultModel().getServiceRepository().registerService(DemoService.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(DemoService.class);
 
         Invoker<DemoService> reference = protocol.refer(DemoService.class, 
consumerurl);
         DemoService demoProxy = (DemoService) proxy.getProxy(reference);
diff --git 
a/dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcOptionsUtils.java
 
b/dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcOptionsUtils.java
index 2086c02..3693f4a 100644
--- 
a/dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcOptionsUtils.java
+++ 
b/dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcOptionsUtils.java
@@ -153,7 +153,7 @@ public class GrpcOptionsUtils {
     }
 
     private static SslContext buildServerSslContext(URL url) {
-        ConfigManager globalConfigManager = 
ApplicationModel.defaultModel().getConfigManager();
+        ConfigManager globalConfigManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
         SslConfig sslConfig = globalConfigManager.getSsl().orElseThrow(() -> 
new IllegalStateException("Ssl enabled, but no ssl cert information 
provided!"));
 
         SslContextBuilder sslClientContextBuilder = null;
@@ -183,7 +183,7 @@ public class GrpcOptionsUtils {
     }
 
     private static SslContext buildClientSslContext(URL url) {
-        ConfigManager globalConfigManager = 
ApplicationModel.defaultModel().getConfigManager();
+        ConfigManager globalConfigManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
         SslConfig sslConfig = globalConfigManager.getSsl().orElseThrow(() -> 
new IllegalStateException("Ssl enabled, but no ssl cert information 
provided!"));
 
 
diff --git 
a/dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocol.java
 
b/dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocol.java
index db99fdb..d5d781c 100644
--- 
a/dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocol.java
+++ 
b/dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocol.java
@@ -72,7 +72,7 @@ public class GrpcProtocol extends AbstractProxyProtocol {
 
         GrpcRemotingServer grpcServer = (GrpcRemotingServer) 
protocolServer.getRemotingServer();
 
-        ServiceRepository serviceRepository = 
ApplicationModel.defaultModel().getServiceRepository();
+        ServiceRepository serviceRepository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
         ProviderModel providerModel = 
serviceRepository.lookupExportedService(url.getServiceKey());
         if (providerModel == null) {
             throw new IllegalStateException("Service " + url.getServiceKey() + 
"should have already been stored in service repository, " +
diff --git 
a/dubbo-rpc/dubbo-rpc-grpc/src/test/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocolTest.java
 
b/dubbo-rpc/dubbo-rpc-grpc/src/test/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocolTest.java
index 1f9e614..7de930d 100644
--- 
a/dubbo-rpc/dubbo-rpc-grpc/src/test/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocolTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-grpc/src/test/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocolTest.java
@@ -31,6 +31,7 @@ import 
org.apache.dubbo.rpc.protocol.grpc.support.DubboGreeterGrpc;
 import org.apache.dubbo.rpc.protocol.grpc.support.GrpcGreeterImpl;
 import org.apache.dubbo.rpc.protocol.grpc.support.HelloReply;
 import org.apache.dubbo.rpc.protocol.grpc.support.HelloRequest;
+
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
@@ -49,8 +50,8 @@ public class GrpcProtocolTest {
 
         URL url = URL.valueOf("grpc://127.0.0.1:" + availablePort + "/" + 
DubboGreeterGrpc.IGreeter.class.getName());
 
-        ServiceDescriptor serviceDescriptor = 
ApplicationModel.defaultModel().getServiceRepository().registerService(DubboGreeterGrpc.IGreeter.class);
-        
ApplicationModel.defaultModel().getServiceRepository().registerProvider(
+        ServiceDescriptor serviceDescriptor = 
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(DubboGreeterGrpc.IGreeter.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerProvider(
             url.getServiceKey(),
             serviceImpl,
             serviceDescriptor,
@@ -66,7 +67,7 @@ public class GrpcProtocolTest {
         
serviceMetadata.setServiceKey(URL.buildKey(DubboGreeterGrpc.IGreeter.class.getName(),
 null, null));
 
         Map<String, AsyncMethodInfo> methodConfigs = new HashMap<>();
-        
ApplicationModel.defaultModel().getServiceRepository().registerConsumer(
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerConsumer(
             url.getServiceKey(),
             serviceDescriptor,
             mockReferenceConfig,
@@ -81,7 +82,7 @@ public class GrpcProtocolTest {
         Assertions.assertEquals("Hello World", hello.getMessage());
 
         // resource recycle.
-        ApplicationModel.defaultModel().getServiceRepository().destroy();
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().destroy();
     }
 
     class MockReferenceConfig extends ReferenceConfigBase {
diff --git 
a/dubbo-rpc/dubbo-rpc-rest/src/test/java/org/apache/dubbo/rpc/protocol/rest/RestProtocolTest.java
 
b/dubbo-rpc/dubbo-rpc-rest/src/test/java/org/apache/dubbo/rpc/protocol/rest/RestProtocolTest.java
index 6053101..cb20fc0 100644
--- 
a/dubbo-rpc/dubbo-rpc-rest/src/test/java/org/apache/dubbo/rpc/protocol/rest/RestProtocolTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-rest/src/test/java/org/apache/dubbo/rpc/protocol/rest/RestProtocolTest.java
@@ -50,7 +50,7 @@ public class RestProtocolTest {
     private ProxyFactory proxy = 
ExtensionLoader.getExtensionLoader(ProxyFactory.class).getAdaptiveExtension();
     private final int availablePort = NetUtils.getAvailablePort();
     private final URL exportUrl = URL.valueOf("rest://127.0.0.1:" + 
availablePort + 
"/rest?interface=org.apache.dubbo.rpc.protocol.rest.DemoService");
-    private final ServiceRepository repository = 
ApplicationModel.defaultModel().getServiceRepository();
+    private final ServiceRepository repository = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
 
     @AfterEach
     public void tearDown() {
diff --git 
a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/AbstractServerStream.java
 
b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/AbstractServerStream.java
index e3aecf2..1b990a7 100644
--- 
a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/AbstractServerStream.java
+++ 
b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/AbstractServerStream.java
@@ -86,7 +86,7 @@ public abstract class AbstractServerStream extends 
AbstractStream implements Str
     }
 
     private static ProviderModel lookupProviderModel(URL url) {
-        ServiceRepository repo = 
ApplicationModel.defaultModel().getServiceRepository();
+        ServiceRepository repo = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
         final ProviderModel model = 
repo.lookupExportedService(url.getServiceKey());
         if (model != null) {
             
ClassLoadUtil.switchContextLoader(model.getServiceInterfaceClass().getClassLoader());
diff --git 
a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleClientHandler.java
 
b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleClientHandler.java
index be9bfd3..1449d11 100644
--- 
a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleClientHandler.java
+++ 
b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleClientHandler.java
@@ -16,12 +16,6 @@
  */
 package org.apache.dubbo.rpc.protocol.tri;
 
-import io.netty.channel.ChannelDuplexHandler;
-import io.netty.channel.ChannelHandlerContext;
-import io.netty.channel.ChannelPromise;
-import io.netty.handler.codec.http2.Http2GoAwayFrame;
-import io.netty.handler.codec.http2.Http2SettingsFrame;
-import io.netty.util.ReferenceCountUtil;
 import org.apache.dubbo.common.URL;
 import org.apache.dubbo.common.constants.CommonConstants;
 import org.apache.dubbo.common.stream.StreamObserver;
@@ -39,6 +33,13 @@ import org.apache.dubbo.rpc.model.ConsumerModel;
 import org.apache.dubbo.rpc.model.MethodDescriptor;
 import org.apache.dubbo.rpc.model.ServiceRepository;
 
+import io.netty.channel.ChannelDuplexHandler;
+import io.netty.channel.ChannelHandlerContext;
+import io.netty.channel.ChannelPromise;
+import io.netty.handler.codec.http2.Http2GoAwayFrame;
+import io.netty.handler.codec.http2.Http2SettingsFrame;
+import io.netty.util.ReferenceCountUtil;
+
 public class TripleClientHandler extends ChannelDuplexHandler {
 
     @Override
@@ -66,7 +67,7 @@ public class TripleClientHandler extends ChannelDuplexHandler 
{
     private void writeRequest(ChannelHandlerContext ctx, final Request req, 
final ChannelPromise promise) {
         final RpcInvocation inv = (RpcInvocation) req.getData();
         final URL url = inv.getInvoker().getUrl();
-        ServiceRepository repo = 
ApplicationModel.defaultModel().getServiceRepository();
+        ServiceRepository repo = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
         MethodDescriptor methodDescriptor = 
repo.lookupMethod(inv.getServiceName(), inv.getMethodName());
         String serviceKey = url.getServiceKey();
         // If it is InstanceAddressURL, the serviceKey may not be obtained.
diff --git 
a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleHttp2FrameServerHandler.java
 
b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleHttp2FrameServerHandler.java
index 64c1634..a7a8d21 100644
--- 
a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleHttp2FrameServerHandler.java
+++ 
b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleHttp2FrameServerHandler.java
@@ -159,7 +159,7 @@ public class TripleHttp2FrameServerHandler extends 
ChannelDuplexHandler {
                     
GrpcStatus.fromCode(Code.UNIMPLEMENTED).withDescription("Service not found:" + 
serviceName));
             return;
         }
-        ServiceRepository repo = 
ApplicationModel.defaultModel().getServiceRepository();
+        ServiceRepository repo = 
ApplicationModel.defaultModel().getApplicationServiceRepository();
         final ServiceDescriptor serviceDescriptor = 
repo.lookupService(invoker.getUrl().getServiceKey());
         if (serviceDescriptor == null) {
             responseErr(ctx,
diff --git 
a/dubbo-rpc/dubbo-rpc-triple/src/test/java/org/apache/dubbo/rpc/protocol/tri/TripleProtocolTest.java
 
b/dubbo-rpc/dubbo-rpc-triple/src/test/java/org/apache/dubbo/rpc/protocol/tri/TripleProtocolTest.java
index 6e8d20c..c21e2f2 100644
--- 
a/dubbo-rpc/dubbo-rpc-triple/src/test/java/org/apache/dubbo/rpc/protocol/tri/TripleProtocolTest.java
+++ 
b/dubbo-rpc/dubbo-rpc-triple/src/test/java/org/apache/dubbo/rpc/protocol/tri/TripleProtocolTest.java
@@ -27,6 +27,7 @@ import org.apache.dubbo.rpc.model.ServiceDescriptor;
 import org.apache.dubbo.rpc.model.ServiceMetadata;
 import org.apache.dubbo.rpc.protocol.tri.support.IGreeter;
 import org.apache.dubbo.rpc.protocol.tri.support.IGreeterImpl;
+
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
@@ -43,8 +44,8 @@ public class TripleProtocolTest {
 
         URL url = URL.valueOf("tri://127.0.0.1:" + availablePort + "/" + 
IGreeter.class.getName());
 
-        ServiceDescriptor serviceDescriptor = 
ApplicationModel.defaultModel().getServiceRepository().registerService(IGreeter.class);
-        
ApplicationModel.defaultModel().getServiceRepository().registerProvider(
+        ServiceDescriptor serviceDescriptor = 
ApplicationModel.defaultModel().getApplicationServiceRepository().registerService(IGreeter.class);
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().registerProvider(
             url.getServiceKey(),
             serviceImpl,
             serviceDescriptor,
@@ -58,6 +59,6 @@ public class TripleProtocolTest {
         Assertions.assertEquals("hello world", serviceImpl.echo("hello 
world"));
 
         // resource recycle.
-        ApplicationModel.defaultModel().getServiceRepository().destroy();
+        
ApplicationModel.defaultModel().getApplicationServiceRepository().destroy();
     }
 }
diff --git 
a/dubbo-spring-boot/dubbo-spring-boot-compatible/actuator/src/main/java/org/apache/dubbo/spring/boot/actuate/endpoint/metadata/DubboShutdownMetadata.java
 
b/dubbo-spring-boot/dubbo-spring-boot-compatible/actuator/src/main/java/org/apache/dubbo/spring/boot/actuate/endpoint/metadata/DubboShutdownMetadata.java
index f255273..52f17e1 100644
--- 
a/dubbo-spring-boot/dubbo-spring-boot-compatible/actuator/src/main/java/org/apache/dubbo/spring/boot/actuate/endpoint/metadata/DubboShutdownMetadata.java
+++ 
b/dubbo-spring-boot/dubbo-spring-boot-compatible/actuator/src/main/java/org/apache/dubbo/spring/boot/actuate/endpoint/metadata/DubboShutdownMetadata.java
@@ -61,7 +61,7 @@ public class DubboShutdownMetadata extends 
AbstractDubboMetadata {
         shutdownCountData.put("services", serviceBeansMap.size());
 
         // Reference Beans
-        Collection<ReferenceConfigBase<?>> references = 
ApplicationModel.defaultModel().getConfigManager().getReferences();
+        Collection<ReferenceConfigBase<?>> references = 
ApplicationModel.defaultModel().getApplicationConfigManager().getReferences();
         for (ReferenceConfigBase<?> reference : references) {
             reference.destroy();
         }
diff --git 
a/dubbo-test/dubbo-test-spring/src/main/java/org/apache/dubbo/test/spring/SpringJavaConfigBeanTest.java
 
b/dubbo-test/dubbo-test-spring/src/main/java/org/apache/dubbo/test/spring/SpringJavaConfigBeanTest.java
index 608e0b3..fbff776 100644
--- 
a/dubbo-test/dubbo-test-spring/src/main/java/org/apache/dubbo/test/spring/SpringJavaConfigBeanTest.java
+++ 
b/dubbo-test/dubbo-test-spring/src/main/java/org/apache/dubbo/test/spring/SpringJavaConfigBeanTest.java
@@ -34,6 +34,7 @@ import org.apache.dubbo.test.common.ZooKeeperServer;
 import org.apache.dubbo.test.common.api.DemoService;
 import org.apache.dubbo.test.common.impl.DemoServiceImpl;
 import org.apache.dubbo.test.spring.context.MockSpringInitializationCustomizer;
+
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeAll;
@@ -83,7 +84,7 @@ public class SpringJavaConfigBeanTest {
         try {
             consumerContext.start();
 
-            ConfigManager configManager = 
ApplicationModel.defaultModel().getConfigManager();
+            ConfigManager configManager = 
ApplicationModel.defaultModel().getApplicationConfigManager();
             ApplicationConfig application = 
configManager.getApplication().get();
             Assertions.assertEquals(false, application.getQosEnable());
             Assertions.assertEquals("Tom", application.getOwner());

Reply via email to