Aestate
Public Member Functions | Public Attributes | List of all members
aestate.work.Cache.CacheManage Class Reference
Inheritance diagram for aestate.work.Cache.CacheManage:
Inheritance graph
Collaboration diagram for aestate.work.Cache.CacheManage:
Collaboration graph

Public Member Functions

def __init__ (self)
 
def __new__ (cls, *args, **kwargs)
 
def clean (self)
 

Public Attributes

 capacity
 

Detailed Description

缓存管理

1.当内存满足系统运行内存的1/10时,满足最大限度数据内容,保证数据完整性的同时保留数据

2.当单次查询数据大于阈值时,保留数据并不在扩大缓存空间,数据完整保留,但不再清理,直到处于第二缓存空间更多查询数据量再次大于阈值时清理

3.当通过aestate改变数据时记录数据变更信息,并重新将数据写入缓存,移除旧缓存数据,这将意味着非通过aestate修改的数据不可被检测到

4.扩容策略:当前内存>=当前容量1/2时,重新计算查询数据量

5.流量计算方式:当前缓存大小 + (当前缓存大小 / 上次扩容时间至当前时间段内插入的新内容数量) * 2 * 当前缓存大小

6.移除方案:时间段内缓存查询次数最少内存最大优先,当 (A次数-B次数) * 10 <= (A占用内存-B占用内存),优先删除B

Definition at line 20 of file Cache.py.

Constructor & Destructor Documentation

◆ __init__()

def aestate.work.Cache.CacheManage.__init__ (   self)

Definition at line 37 of file Cache.py.

Member Function Documentation

◆ __new__()

def aestate.work.Cache.CacheManage.__new__ (   cls,
args,
**  kwargs 
)
单例管理缓存内容

Definition at line 42 of file Cache.py.

◆ clean()

def aestate.work.Cache.CacheManage.clean (   self)

Definition at line 49 of file Cache.py.

Member Data Documentation

◆ capacity

aestate.work.Cache.CacheManage.capacity

Definition at line 40 of file Cache.py.


The documentation for this class was generated from the following file: