记得上下班打卡 | git大法好,push需谨慎

Commit 9be5dddb authored by 胡佳晨's avatar 胡佳晨

Merge remote-tracking branch 'origin/dev' into dev

parents 2753f2af 397329fd
...@@ -56,11 +56,15 @@ public class RedisDistributedLocker implements DistributedLocker { ...@@ -56,11 +56,15 @@ public class RedisDistributedLocker implements DistributedLocker {
@Override @Override
public void unlock(String lockKey) { public void unlock(String lockKey) {
RLock lock = redissonClient.getLock(lockKey); RLock lock = redissonClient.getLock(lockKey);
if (lock.isHeldByCurrentThread()) {
lock.unlock(); lock.unlock();
} }
}
@Override @Override
public void unlock(RLock lock) { public void unlock(RLock lock) {
if (lock.isHeldByCurrentThread()) {
lock.unlock(); lock.unlock();
} }
}
} }
package com.liquidnet.service.adam.service.impl; package com.liquidnet.service.adam.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.common.cache.redisson.util.RedisLockUtil; import com.liquidnet.common.cache.redisson.util.RedisLockUtil;
import com.liquidnet.common.exception.LiquidnetServiceException; import com.liquidnet.common.exception.LiquidnetServiceException;
import com.liquidnet.common.mq.constant.MQConst; import com.liquidnet.common.mq.constant.MQConst;
...@@ -13,8 +12,6 @@ import com.liquidnet.service.adam.dto.AdamThirdPartParam; ...@@ -13,8 +12,6 @@ import com.liquidnet.service.adam.dto.AdamThirdPartParam;
import com.liquidnet.service.adam.dto.vo.*; import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.service.adam.entity.AdamEnters; import com.liquidnet.service.adam.entity.AdamEnters;
import com.liquidnet.service.adam.entity.AdamRealName; import com.liquidnet.service.adam.entity.AdamRealName;
import com.liquidnet.service.adam.entity.AdamUser;
import com.liquidnet.service.adam.mapper.AdamUserMapper;
import com.liquidnet.service.adam.service.AdamRdmService; import com.liquidnet.service.adam.service.AdamRdmService;
import com.liquidnet.service.adam.service.IAdamEntersService; import com.liquidnet.service.adam.service.IAdamEntersService;
import com.liquidnet.service.adam.service.IAdamRealNameService; import com.liquidnet.service.adam.service.IAdamRealNameService;
...@@ -82,7 +79,7 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -82,7 +79,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
AdamUserInfoVo userInfoVo = null; AdamUserInfoVo userInfoVo = null;
if (RedisLockUtil.tryLock(LOCK_KEY_UREGISTER + mobile, 1, 3)) { if (RedisLockUtil.tryLock(LOCK_KEY_UREGISTER + mobile, 1, 5)) {
String uid = adamRdmService.getUidByMobile(mobile); String uid = adamRdmService.getUidByMobile(mobile);
if (StringUtils.isEmpty(uid)) { if (StringUtils.isEmpty(uid)) {
userInfoVo = AdamUserInfoVo.getNew(); userInfoVo = AdamUserInfoVo.getNew();
...@@ -97,6 +94,10 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -97,6 +94,10 @@ public class AdamUserServiceImpl implements IAdamUserService {
mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName()); mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s); log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
adamRdmService.setUidByMobile(mobile, userInfoVo.getUid());
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
LinkedList<String> toMqSqls = new LinkedList<>(); LinkedList<String> toMqSqls = new LinkedList<>();
LinkedList<Object[]> initUserObjs = new LinkedList<>(), initUserInfoObjs = new LinkedList<>(); LinkedList<Object[]> initUserObjs = new LinkedList<>(), initUserInfoObjs = new LinkedList<>();
...@@ -110,10 +111,6 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -110,10 +111,6 @@ public class AdamUserServiceImpl implements IAdamUserService {
SqlMapping.gets(toMqSqls, initUserObjs, initUserInfoObjs) SqlMapping.gets(toMqSqls, initUserObjs, initUserInfoObjs)
); );
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s); log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
adamRdmService.setUidByMobile(mobile, userInfoVo.getUid());
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
} else { } else {
userInfoVo = adamRdmService.getUserInfoVoByUid(uid); userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment