redis.clients.jedis.JedisCommands.pexpireAt()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(1.9k)|赞(0)|评价(0)|浏览(109)

本文整理了Java中redis.clients.jedis.JedisCommands.pexpireAt()方法的一些代码示例,展示了JedisCommands.pexpireAt()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JedisCommands.pexpireAt()方法的具体详情如下:
包路径:redis.clients.jedis.JedisCommands
类名称:JedisCommands
方法名:pexpireAt

JedisCommands.pexpireAt介绍

暂无

代码示例

代码示例来源:origin: com.netflix.spinnaker.clouddriver/cats-dynomite

private void ttlLock(JedisCommands client, String agentType, long newTtl) {
 String response = client.get(agentType);
 if (nodeIdentity.getNodeIdentity().equals(response)) {
  client.pexpireAt(agentType, System.currentTimeMillis() + newTtl);
 }
}

代码示例来源:origin: vakinge/jeesuite-libs

/**
 * 
 * 设置指定时间戳时失效
 *
 * 注意:redis服务器时间问题
 * 
 * @param keyBytes
 * @param expireAt
 *            超时时间点
 * @return true:超时设置成功
 *
 *         false:key不存在或超时未设置成功
 */
public boolean setExpireAt(Date expireAt) {
  try {
    if(!isBinary)return getJedisCommands(groupName).pexpireAt(key, expireAt.getTime()) == 1;
    if(isCluster(groupName)){
      return getBinaryJedisClusterCommands(groupName).pexpireAt(keyBytes, expireAt.getTime()) == 1;
    }
    return getBinaryJedisCommands(groupName).pexpireAt(keyBytes, expireAt.getTime()) == 1;
  } finally {
    getJedisProvider(groupName).release();
  }
}

代码示例来源:origin: com.netflix.spinnaker.clouddriver/cats-dynomite

private boolean acquireRunKey(String agentType, long timeout) {
 // This isn't as safe as the vanilla Redis impl because the call isn't atomic, but it's the best we can do until
 // dynomite adds support for `String set(String key, String value, String nxxx, String expx, long time)` (which
 // they are working on).
 String identity = nodeIdentity.getNodeIdentity();
 return redisClientDelegate.withCommandsClient(client -> {
  return Failsafe
   .with(ACQUIRE_LOCK_RETRY_POLICY)
   .get(() -> {
    String response = client.get(agentType);
    if (response == null && client.setnx(agentType, identity) == 1) {
     client.pexpireAt(agentType, System.currentTimeMillis() + timeout);
     return true;
    }
    if (client.ttl(agentType) == -1) {
     log.warn("Detected potential deadlocked agent, removing lock key: " + agentType);
     client.del(agentType);
    }
    return false;
   });
 });
}

相关文章

微信公众号

最新文章

更多