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


Java PoolingOptions.setIdleTimeoutSeconds方法代码示例

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


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

示例1: build

import com.datastax.driver.core.PoolingOptions; //导入方法依赖的package包/类
public PoolingOptions build() {
    PoolingOptions poolingOptions = new PoolingOptions();
    if (local != null) {
        setPoolingOptions(poolingOptions, HostDistance.LOCAL, local);
    }
    if (remote != null) {
        setPoolingOptions(poolingOptions, HostDistance.REMOTE, remote);
    }
    if (heartbeatInterval != null) {
        poolingOptions.setHeartbeatIntervalSeconds((int) heartbeatInterval.toSeconds());
    }
    if (poolTimeout != null) {
        poolingOptions.setPoolTimeoutMillis((int) poolTimeout.toMilliseconds());
    }
    if (idleTimeout != null) {
        poolingOptions.setIdleTimeoutSeconds((int) idleTimeout.toSeconds());
    }
    return poolingOptions;
}
 
开发者ID:composable-systems,项目名称:dropwizard-cassandra,代码行数:20,代码来源:PoolingOptionsFactory.java

示例2: init

import com.datastax.driver.core.PoolingOptions; //导入方法依赖的package包/类
/**
	 * 描述: 初始化配置
	 * 时间: 2017年11月15日 上午11:25:07
	 * @author yi.zhang
	 * @param servers	服务地址
	 * @param keyspace	命名空间
	 * @param username	账号
	 * @param password	密码
	 */
	public void init(String servers,String keyspace,String username,String password) {
		try {
			// socket 链接配置
			SocketOptions socket = new SocketOptions();
			socket.setKeepAlive(true);
			socket.setReceiveBufferSize(1024* 1024);
			socket.setSendBufferSize(1024* 1024);
			socket.setConnectTimeoutMillis(5 * 1000);
			socket.setReadTimeoutMillis(1000);
			//设置连接池
			PoolingOptions pool = new PoolingOptions();
			// pool.setMaxRequestsPerConnection(HostDistance.LOCAL, 32);
			// pool.setMaxRequestsPerConnection(HostDistance.REMOTE, 32);
			// pool.setCoreConnectionsPerHost(HostDistance.LOCAL, 2);
			// pool.setCoreConnectionsPerHost(HostDistance.REMOTE, 2);
			// pool.setMaxConnectionsPerHost(HostDistance.LOCAL, 4);
			// pool.setMaxConnectionsPerHost(HostDistance.REMOTE, 4);
			pool.setHeartbeatIntervalSeconds(60);
			pool.setIdleTimeoutSeconds(120);
			pool.setPoolTimeoutMillis(5 * 1000);
			List<InetSocketAddress> saddress = new ArrayList<InetSocketAddress>();
			if (servers != null && !"".equals(servers)) {
				for (String server : servers.split(",")) {
					String[] address = server.split(":");
					String ip = address[0];
					int port = 9042;
					if (address != null && address.length > 1) {
						port = Integer.valueOf(address[1]);
					}
					saddress.add(new InetSocketAddress(ip, port));
				}
			}
			InetSocketAddress[] addresses = new InetSocketAddress[saddress.size()];
			saddress.toArray(addresses);
			
			Builder builder = Cluster.builder();
	        builder.withSocketOptions(socket);
	        // 设置压缩方式
	        builder.withCompression(ProtocolOptions.Compression.LZ4);
	        // 负载策略
//	        DCAwareRoundRobinPolicy loadBalance = DCAwareRoundRobinPolicy.builder().withLocalDc("localDc").withUsedHostsPerRemoteDc(2).allowRemoteDCsForLocalConsistencyLevel().build();
//	        builder.withLoadBalancingPolicy(loadBalance);
	        // 重试策略
	        builder.withRetryPolicy(DefaultRetryPolicy.INSTANCE);
			builder.withPoolingOptions(pool);
			builder.addContactPointsWithPorts(addresses);
			builder.withCredentials(username, password);
			Cluster cluster = builder.build();
			if (keyspace != null && !"".equals(keyspace)) {
				session = cluster.connect(keyspace);
			} else {
				session = cluster.connect();
			}
			mapping = new MappingManager(session);
		} catch (Exception e) {
			logger.error("-----Cassandra Config init Error-----", e);
		}
	}
 
开发者ID:dev-share,项目名称:database-transform-tool,代码行数:68,代码来源:CassandraFactory.java

示例3: start

import com.datastax.driver.core.PoolingOptions; //导入方法依赖的package包/类
@Override
public void start() {
   try {
      PoolingOptions poolingOptions = new PoolingOptions();
      CassandraStoreConnectionPoolConfiguration poolConfig = configuration.connectionPool();
      poolingOptions.setPoolTimeoutMillis(poolConfig.poolTimeoutMillis());
      poolingOptions.setHeartbeatIntervalSeconds(poolConfig.heartbeatIntervalSeconds());
      poolingOptions.setIdleTimeoutSeconds(poolConfig.idleTimeoutSeconds());

      Cluster.Builder builder = Cluster.builder();
      if (configuration.useSsl()) {
         builder.withSSL();
      }
      if (!configuration.username().isEmpty()) {
         builder.withCredentials(configuration.username(), configuration.password());
         System.out.println("configuration.username() = " + configuration.username());
         System.out.println("configuration.password() = " + configuration.password());
      }
      builder.withPoolingOptions(poolingOptions);

      ArrayList<InetSocketAddress> servers = new ArrayList<>();
      for (CassandraStoreServerConfiguration cassandraStoreServerConfiguration : configuration.servers()) {
         servers.add(new InetSocketAddress(cassandraStoreServerConfiguration.host(), cassandraStoreServerConfiguration.port()));
      }
      builder.addContactPointsWithPorts(servers);

      cluster = builder.build();

      if (configuration.autoCreateKeyspace()) {
         createKeySpace();
      }
      session = cluster.connect(configuration.keyspace());
      entryTable = configuration.entryTable();
      writeStatement = session.prepare("INSERT INTO " + entryTable + " (key, value, metadata) VALUES (?, ?, ?) USING TTL ?");
      writeStatement.setConsistencyLevel(configuration.writeConsistencyLevel());
      writeStatement.setSerialConsistencyLevel(configuration.writeSerialConsistencyLevel());
      deleteStatement = session.prepare("DELETE FROM " + entryTable + " WHERE key=?");
      deleteStatement.setConsistencyLevel(configuration.writeConsistencyLevel());
      deleteStatement.setSerialConsistencyLevel(configuration.writeSerialConsistencyLevel());
      selectStatement = session.prepare("SELECT value, metadata FROM " + entryTable + " WHERE key=?");
      selectStatement.setConsistencyLevel(configuration.readConsistencyLevel());
      selectStatement.setSerialConsistencyLevel(configuration.readSerialConsistencyLevel());
      containsStatement = session.prepare("SELECT key FROM " + entryTable + " WHERE key=?");
      selectAllStatement = session.prepare("SELECT key, value, metadata FROM " + entryTable);
      selectAllStatement.setConsistencyLevel(configuration.readConsistencyLevel());
      selectAllStatement.setSerialConsistencyLevel(configuration.readSerialConsistencyLevel());
      sizeStatement = session.prepare("SELECT count(*) FROM " + entryTable);
      clearStatement = session.prepare("TRUNCATE " + entryTable);
   } catch (Exception e) {
      throw log.errorCommunicating(e);
   }
   entryTable = configuration.entryTable();

   log.debug("Cassandra cache store started.");
}
 
开发者ID:infinispan,项目名称:infinispan-cachestore-cassandra,代码行数:56,代码来源:CassandraStore.java


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