当前位置: 首页>>代码示例>>Java>>正文


Java CacheConfiguration.getEvictionPolicy方法代码示例

本文整理汇总了Java中org.apache.ignite.configuration.CacheConfiguration.getEvictionPolicy方法的典型用法代码示例。如果您正苦于以下问题:Java CacheConfiguration.getEvictionPolicy方法的具体用法?Java CacheConfiguration.getEvictionPolicy怎么用?Java CacheConfiguration.getEvictionPolicy使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.ignite.configuration.CacheConfiguration的用法示例。


在下文中一共展示了CacheConfiguration.getEvictionPolicy方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: start0

import org.apache.ignite.configuration.CacheConfiguration; //导入方法依赖的package包/类
/** {@inheritDoc} */
@Override public void start0() throws IgniteCheckedException {
    CacheConfiguration cfg = cctx.config();

    if (cctx.isNear()) {
        plc = (cfg.getNearConfiguration().getNearEvictionPolicyFactory() != null) ?
            (EvictionPolicy)cfg.getNearConfiguration().getNearEvictionPolicyFactory().create() :
            cfg.getNearConfiguration().getNearEvictionPolicy();
    }
    else if (cfg.getEvictionPolicyFactory() != null)
        plc = (EvictionPolicy)cfg.getEvictionPolicyFactory().create();
    else
        plc = cfg.getEvictionPolicy();

    plcEnabled = plc != null;

    filter = cfg.getEvictionFilter();

    if (log.isDebugEnabled())
        log.debug("Eviction manager started on node: " + cctx.nodeId());
}
 
开发者ID:apache,项目名称:ignite,代码行数:22,代码来源:GridCacheEvictionManager.java

示例2: preProcessCacheConfiguration

import org.apache.ignite.configuration.CacheConfiguration; //导入方法依赖的package包/类
/** {@inheritDoc} */
@Override public void preProcessCacheConfiguration(CacheConfiguration cfg) {
    EvictionPolicy evictPlc = cfg.getEvictionPolicyFactory() != null ?
        (EvictionPolicy)cfg.getEvictionPolicyFactory().create()
        : cfg.getEvictionPolicy();

    if (evictPlc instanceof IgfsPerBlockLruEvictionPolicy && cfg.getEvictionFilter() == null)
        cfg.setEvictionFilter(new IgfsEvictionFilter());
}
 
开发者ID:apache,项目名称:ignite,代码行数:10,代码来源:IgfsHelperImpl.java

示例3: validateCacheConfiguration

import org.apache.ignite.configuration.CacheConfiguration; //导入方法依赖的package包/类
/** {@inheritDoc} */
@Override public void validateCacheConfiguration(CacheConfiguration cfg) throws IgniteCheckedException {
    EvictionPolicy evictPlc = cfg.getEvictionPolicyFactory() != null ?
        (EvictionPolicy)cfg.getEvictionPolicyFactory().create()
        : cfg.getEvictionPolicy();

    if (evictPlc != null && evictPlc instanceof IgfsPerBlockLruEvictionPolicy) {
        EvictionFilter evictFilter = cfg.getEvictionFilter();

        if (evictFilter != null && !(evictFilter instanceof IgfsEvictionFilter))
            throw new IgniteCheckedException("Eviction filter cannot be set explicitly when using " +
                "IgfsPerBlockLruEvictionPolicy: " + U.maskName(cfg.getName()));
    }
}
 
开发者ID:apache,项目名称:ignite,代码行数:15,代码来源:IgfsHelperImpl.java

示例4: suggestOptimizations

import org.apache.ignite.configuration.CacheConfiguration; //导入方法依赖的package包/类
/**
 * @param cfg Configuration to check for possible performance issues.
 * @param hasStore {@code True} if store is configured.
 */
private void suggestOptimizations(CacheConfiguration cfg, boolean hasStore) {
    GridPerformanceSuggestions perf = ctx.performance();

    String msg = "Disable eviction policy (remove from configuration)";

    if (cfg.getEvictionPolicyFactory() != null || cfg.getEvictionPolicy() != null)
        perf.add(msg, false);
    else
        perf.add(msg, true);

    if (cfg.getCacheMode() == PARTITIONED) {
        perf.add("Disable near cache (set 'nearConfiguration' to null)", cfg.getNearConfiguration() == null);

        if (cfg.getAffinity() != null)
            perf.add("Decrease number of backups (set 'backups' to 0)", cfg.getBackups() == 0);
    }

    // Suppress warning if at least one ATOMIC cache found.
    perf.add("Enable ATOMIC mode if not using transactions (set 'atomicityMode' to ATOMIC)",
        cfg.getAtomicityMode() == ATOMIC);

    // Suppress warning if at least one non-FULL_SYNC mode found.
    perf.add("Disable fully synchronous writes (set 'writeSynchronizationMode' to PRIMARY_SYNC or FULL_ASYNC)",
        cfg.getWriteSynchronizationMode() != FULL_SYNC);

    if (hasStore && cfg.isWriteThrough())
        perf.add("Enable write-behind to persistent store (set 'writeBehindEnabled' to true)",
            cfg.isWriteBehindEnabled());
}
 
开发者ID:apache,项目名称:ignite,代码行数:34,代码来源:GridCacheProcessor.java


注:本文中的org.apache.ignite.configuration.CacheConfiguration.getEvictionPolicy方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。