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


Java GenericObjectPoolConfig.setMaxIdle方法代码示例

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


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

示例1: doTest

import org.apache.commons.pool2.impl.GenericObjectPoolConfig; //导入方法依赖的package包/类
private static void doTest() throws Exception {
    GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig();
    poolConfig.setMinIdle(0);
    poolConfig.setMaxIdle(5);
    poolConfig.setMaxTotal(5);
    final JedisPool pool = new JedisPool(poolConfig, "127.0.0.1", 6379, 2000, "weimob123", 8);

    List<Thread> tds = new ArrayList<Thread>();
    final Integer temp = 0;
    final AtomicInteger ind = new AtomicInteger();
    for (int i = 0; i < 50; i++) {
        Thread hj = new Thread(new Runnable() {
            public void run() {
                for (int i; (i = ind.getAndIncrement()) < TOTAL_OPERATIONS; ) {
                    Jedis j = pool.getResource();
                    final String key = "foo" + i;
                    // redisUtil.setRedisData(key, key);
                    j.set(key.getBytes(), ConvertUtil.serialize(temp));
                    j.close();
                }
            }
        });
        tds.add(hj);
        hj.start();
    }

    for (Thread t : tds)
        t.join();
    pool.close();
    pool.destroy();
}
 
开发者ID:TwoDragonLake,项目名称:tdl-seckill,代码行数:32,代码来源:JedisTest.java

示例2: getGenericPoolConfig

import org.apache.commons.pool2.impl.GenericObjectPoolConfig; //导入方法依赖的package包/类
public GenericObjectPoolConfig getGenericPoolConfig() {
    GenericObjectPoolConfig genericObjectPoolConfig = new GenericObjectPoolConfig();
    genericObjectPoolConfig.setLifo(this.lifo);
    genericObjectPoolConfig.setMinIdle(this.minIdle);
    genericObjectPoolConfig.setMaxIdle(this.maxIdle);
    genericObjectPoolConfig.setMaxTotal(this.maxTotal);
    genericObjectPoolConfig.setNumTestsPerEvictionRun(this.numtestsPerEviction);
    genericObjectPoolConfig.setBlockWhenExhausted(this.blockedWhenExhausted);
    genericObjectPoolConfig.setTimeBetweenEvictionRunsMillis(this.timeBetweenEvictionRun);
    genericObjectPoolConfig.setTestOnBorrow(this.testOnBorrow);
    genericObjectPoolConfig.setTestOnCreate(this.testOnCreate);
    genericObjectPoolConfig.setTestOnReturn(this.testOnReturn);
    return genericObjectPoolConfig;
}
 
开发者ID:carryxyh,项目名称:FKC,代码行数:15,代码来源:KryoPoolConfig.java

示例3: testSimplePool

import org.apache.commons.pool2.impl.GenericObjectPoolConfig; //导入方法依赖的package包/类
@Test
public void testSimplePool() throws Exception {
    GenericObjectPoolConfig pc = new GenericObjectPoolConfig();
    pc.setMinIdle(2);
    pc.setMaxIdle(10);
    pc.setMaxTotal(10);
    JedisPool pool = new JedisPool(pc, "localhost", 6379);

    testWithPool(pool);
}
 
开发者ID:alibaba,项目名称:jetcache,代码行数:11,代码来源:RedisCacheTest.java

示例4: testSentinel

import org.apache.commons.pool2.impl.GenericObjectPoolConfig; //导入方法依赖的package包/类
@Test
public void testSentinel() throws Exception {
    GenericObjectPoolConfig pc = new GenericObjectPoolConfig();
    pc.setMinIdle(2);
    pc.setMaxIdle(10);
    pc.setMaxTotal(10);

    Set<String> sentinels = new HashSet<>();
    sentinels.add("127.0.0.1:26379");
    sentinels.add("127.0.0.1:26380");
    sentinels.add("127.0.0.1:26381");
    JedisSentinelPool pool = new JedisSentinelPool("mymaster", sentinels, pc);

    testWithPool(pool);
}
 
开发者ID:alibaba,项目名称:jetcache,代码行数:16,代码来源:RedisCacheTest.java

示例5: start

import org.apache.commons.pool2.impl.GenericObjectPoolConfig; //导入方法依赖的package包/类
public static void start(){
//        int size = 1024;
        int size = 1024;
        int max = 32;
        GenericObjectPoolConfig genericObjectPoolConfig = new GenericObjectPoolConfig();
        genericObjectPoolConfig.setMaxTotal(size * max);
        genericObjectPoolConfig.setMaxIdle(size * max);
        genericObjectPoolConfig.setMinIdle(size);
        long time = 1000 * 30;
        genericObjectPoolConfig.setMaxWaitMillis(time);
        genericObjectPoolConfig.setSoftMinEvictableIdleTimeMillis(time);

        updateEventCacheFactory = new UpdateEventCacheFactory(new UpdateEventPoolFactory(), genericObjectPoolConfig);
    }
 
开发者ID:jwpttcg66,项目名称:game-executor,代码行数:15,代码来源:UpdateEventCacheService.java

示例6: RedisRegistry

import org.apache.commons.pool2.impl.GenericObjectPoolConfig; //导入方法依赖的package包/类
public RedisRegistry(URL url) {
    super(url);
    if (url.isAnyHost()) {
        throw new IllegalStateException("registry address == null");
    }
    GenericObjectPoolConfig config = new GenericObjectPoolConfig();
    config.setTestOnBorrow(url.getParameter("test.on.borrow", true));
    config.setTestOnReturn(url.getParameter("test.on.return", false));
    config.setTestWhileIdle(url.getParameter("test.while.idle", false));
    if (url.getParameter("max.idle", 0) > 0)
        config.setMaxIdle(url.getParameter("max.idle", 0));
    if (url.getParameter("min.idle", 0) > 0)
        config.setMinIdle(url.getParameter("min.idle", 0));
    if (url.getParameter("max.active", 0) > 0)
        config.setMaxTotal(url.getParameter("max.active", 0));
    if (url.getParameter("max.total", 0) > 0)
        config.setMaxTotal(url.getParameter("max.total", 0));
    if (url.getParameter("max.wait", url.getParameter("timeout", 0)) > 0)
        config.setMaxWaitMillis(url.getParameter("max.wait", url.getParameter("timeout", 0)));
    if (url.getParameter("num.tests.per.eviction.run", 0) > 0)
        config.setNumTestsPerEvictionRun(url.getParameter("num.tests.per.eviction.run", 0));
    if (url.getParameter("time.between.eviction.runs.millis", 0) > 0)
        config.setTimeBetweenEvictionRunsMillis(url.getParameter("time.between.eviction.runs.millis", 0));
    if (url.getParameter("min.evictable.idle.time.millis", 0) > 0)
        config.setMinEvictableIdleTimeMillis(url.getParameter("min.evictable.idle.time.millis", 0));

    String cluster = url.getParameter("cluster", "failover");
    if (!"failover".equals(cluster) && !"replicate".equals(cluster)) {
        throw new IllegalArgumentException("Unsupported redis cluster: " + cluster + ". The redis cluster only supported failover or replicate.");
    }
    replicate = "replicate".equals(cluster);

    List<String> addresses = new ArrayList<String>();
    addresses.add(url.getAddress());
    String[] backups = url.getParameter(Constants.BACKUP_KEY, new String[0]);
    if (backups != null && backups.length > 0) {
        addresses.addAll(Arrays.asList(backups));
    }
    for (String address : addresses) {
        int i = address.indexOf(':');
        String host;
        int port;
        if (i > 0) {
            host = address.substring(0, i);
            port = Integer.parseInt(address.substring(i + 1));
        } else {
            host = address;
            port = DEFAULT_REDIS_PORT;
        }
        this.jedisPools.put(address, new JedisPool(config, host, port,
                url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT)));
    }

    this.reconnectPeriod = url.getParameter(Constants.REGISTRY_RECONNECT_PERIOD_KEY, Constants.DEFAULT_REGISTRY_RECONNECT_PERIOD);
    String group = url.getParameter(Constants.GROUP_KEY, DEFAULT_ROOT);
    if (!group.startsWith(Constants.PATH_SEPARATOR)) {
        group = Constants.PATH_SEPARATOR + group;
    }
    if (!group.endsWith(Constants.PATH_SEPARATOR)) {
        group = group + Constants.PATH_SEPARATOR;
    }
    this.root = group;

    this.expirePeriod = url.getParameter(Constants.SESSION_TIMEOUT_KEY, Constants.DEFAULT_SESSION_TIMEOUT);
    this.expireFuture = expireExecutor.scheduleWithFixedDelay(new Runnable() {
        public void run() {
            try {
                deferExpired(); // 延长过期时间
            } catch (Throwable t) { // 防御性容错
                logger.error("Unexpected exception occur at defer expire time, cause: " + t.getMessage(), t);
            }
        }
    }, expirePeriod / 2, expirePeriod / 2, TimeUnit.MILLISECONDS);
}
 
开发者ID:l1325169021,项目名称:github-test,代码行数:75,代码来源:RedisRegistry.java


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