Class CapacityService
- java.lang.Object
-
- com.alibaba.nacos.config.server.service.capacity.CapacityService
-
@Service public class CapacityService extends Object
Capacity service- Author:
- hexu.hxy
-
-
Constructor Summary
Constructors Constructor Description CapacityService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcorrectGroupUsage(String group)voidcorrectTenantUsage(String tenant)voidcorrectUsage()voiddestroy()CapacitygetCapacity(String group, String tenant)CapacitygetCapacityWithDefault(String group, String tenant)GroupCapacitygetGroupCapacity(String group)TenantCapacitygetTenantCapacity(String tenant)voidinit()voidinitAllCapacity()booleaninitCapacity(String group, String tenant)booleaninitGroupCapacity(String group)初始化该Group的容量信息,如果到达限额,将自动扩容,以降低运维成本booleaninitTenantCapacity(String tenant)初始化该租户的容量信息,如果到达限额,将自动扩容,以降低运维成本booleaninitTenantCapacity(String tenant, Integer quota, Integer maxSize, Integer maxAggrCount, Integer maxAggrSize)初始化该租户的容量信息,如果到达限额,将自动扩容,以降低运维成本booleaninsertAndUpdateClusterUsage(CounterMode counterMode, boolean ignoreQuotaLimit)集群:1.booleaninsertAndUpdateGroupUsage(CounterMode counterMode, String group, boolean ignoreQuotaLimit)提供给关闭容量管理的限制检验功能时计数使用
Group:1.booleaninsertAndUpdateTenantUsage(CounterMode counterMode, String tenant, boolean ignoreQuotaLimit)提供给关闭容量管理的限制检验功能时计数使用
租户: 1.booleaninsertOrUpdateCapacity(String group, String tenant, Integer quota, Integer maxSize, Integer maxAggrCount, Integer maxAggrSize)提供给API接口使用
租户:记录不存在则初始化,存在则直接更新容量限额或者内容大小booleanupdateClusterUsage(CounterMode counterMode)booleanupdateGroupUsage(CounterMode counterMode, String group)booleanupdateTenantUsage(CounterMode counterMode, String tenant)
-
-
-
Method Detail
-
init
@PostConstruct public void init()
-
destroy
@PreDestroy public void destroy()
-
correctUsage
public void correctUsage()
-
correctGroupUsage
public void correctGroupUsage(String group)
-
correctTenantUsage
public void correctTenantUsage(String tenant)
-
initAllCapacity
public void initAllCapacity()
-
insertAndUpdateClusterUsage
public boolean insertAndUpdateClusterUsage(CounterMode counterMode, boolean ignoreQuotaLimit)
集群:1. 如果容量信息不存在,则初始化容量信息
2. 更新容量的使用量usage,加一或减一- Parameters:
counterMode- 增加或者减少ignoreQuotaLimit- 是否忽略容量额度限制,在关闭容量管理的限制检验功能只计数的时候为true,开启容量管理的限制检验功能则为false- Returns:
- 是否操作成功
-
updateClusterUsage
public boolean updateClusterUsage(CounterMode counterMode)
-
insertAndUpdateGroupUsage
public boolean insertAndUpdateGroupUsage(CounterMode counterMode, String group, boolean ignoreQuotaLimit)
提供给关闭容量管理的限制检验功能时计数使用
Group:1. 如果容量信息不存在,则初始化容量信息
2. 更新容量的使用量usage,加一或减一- Parameters:
counterMode- 增加或者减少group- groupignoreQuotaLimit- 是否忽略容量额度限制,在关闭容量管理的限制检验功能只计数的时候为true,开启容量管理的限制检验功能则为false- Returns:
- 是否操作成功
-
getGroupCapacity
public GroupCapacity getGroupCapacity(String group)
-
updateGroupUsage
public boolean updateGroupUsage(CounterMode counterMode, String group)
-
initGroupCapacity
public boolean initGroupCapacity(String group)
初始化该Group的容量信息,如果到达限额,将自动扩容,以降低运维成本
-
insertAndUpdateTenantUsage
public boolean insertAndUpdateTenantUsage(CounterMode counterMode, String tenant, boolean ignoreQuotaLimit)
提供给关闭容量管理的限制检验功能时计数使用
租户: 1. 如果容量信息不存在,则初始化容量信息
2. 更新容量的使用量usage,加一或减一- Parameters:
counterMode- 增加或者减少tenant- 租户ignoreQuotaLimit- 是否忽略容量额度限制,在关闭容量管理的限制检验功能只计数的时候为true,开启容量管理的限制检验功能则为false- Returns:
- 是否操作成功
-
updateTenantUsage
public boolean updateTenantUsage(CounterMode counterMode, String tenant)
-
initTenantCapacity
public boolean initTenantCapacity(String tenant)
初始化该租户的容量信息,如果到达限额,将自动扩容,以降低运维成本
-
initTenantCapacity
public boolean initTenantCapacity(String tenant, Integer quota, Integer maxSize, Integer maxAggrCount, Integer maxAggrSize)
初始化该租户的容量信息,如果到达限额,将自动扩容,以降低运维成本
-
getTenantCapacity
public TenantCapacity getTenantCapacity(String tenant)
-
insertOrUpdateCapacity
public boolean insertOrUpdateCapacity(String group, String tenant, Integer quota, Integer maxSize, Integer maxAggrCount, Integer maxAggrSize)
提供给API接口使用
租户:记录不存在则初始化,存在则直接更新容量限额或者内容大小- Parameters:
group- Group IDtenant- 租户quota- 容量限额maxSize- 配置内容(content)大小限制- Returns:
- 是否操作成功
-
-