public abstract class DbCounterFactory extends AbstractCounterFactory implements CounterFactory, cn.weforward.common.GcCleanable
| 限定符和类型 | 字段和说明 |
|---|---|
protected boolean |
m_CopyOnFlush |
protected int |
m_Expire
计数器项重新加载间隔(秒)
|
protected Flusher |
m_Flusher |
protected int |
m_MaxBatch
每次批量刷写的项数
|
protected int |
m_NullTimeout
NULL值重新加载间隔(秒)
|
protected String |
m_ServerId |
| 构造器和说明 |
|---|
DbCounterFactory(String serverId) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected abstract CounterItem |
doLoad(DbCounter counter,
String id)
由数据库加载计数项
|
protected abstract void |
doNew(DbCounter counter,
CounterItem item)
(可能是)新的计数项,用于及时把新项写入数据库,此实现可选择略过
|
protected abstract void |
doUpdate(DbCounter counter,
cn.weforward.common.util.LruCache.DirtyData<CounterItem> data)
更新计数项到数据库
|
int |
getExpire() |
Flusher |
getFlusher() |
int |
getMaxBatch() |
String |
getServerId() |
boolean |
isCopyOnFlush() |
void |
onGcCleanup(int policy) |
void |
setCopyOnFlush(boolean enabled)
开启/关闭刷写时先复制待更新列表,用于在LabelSet.put慢速或直接写入的情况下使用
|
void |
setExpire(int expire) |
void |
setFlusher(Flusher flusher) |
void |
setMaxBatch(int limit) |
void |
setNullTimeout(int seconds) |
createCounter, doCreateCounter, getCounter, iterator, openCounterclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcreateCounter, getCounter, openCounterforEach, iterator, spliteratorprotected String m_ServerId
protected Flusher m_Flusher
protected boolean m_CopyOnFlush
protected int m_NullTimeout
protected int m_MaxBatch
protected int m_Expire
public DbCounterFactory(String serverId)
public void setFlusher(Flusher flusher)
public Flusher getFlusher()
public String getServerId()
public void setCopyOnFlush(boolean enabled)
enabled - 是否开启public boolean isCopyOnFlush()
public void setNullTimeout(int seconds)
public void setMaxBatch(int limit)
public int getMaxBatch()
public void setExpire(int expire)
public int getExpire()
public void onGcCleanup(int policy)
onGcCleanup 在接口中 cn.weforward.common.GcCleanableprotected abstract CounterItem doLoad(DbCounter counter, String id)
counter - 计数器id - 计数项idprotected abstract void doUpdate(DbCounter counter, cn.weforward.common.util.LruCache.DirtyData<CounterItem> data)
counter - 计数器data - 要更新的计数项列表protected abstract void doNew(DbCounter counter, CounterItem item)
counter - 计数器item - 新计数项Copyright © 2021. All rights reserved.