You've already forked FrameTour-BE
各种sql、缓存优化
This commit is contained in:
@@ -2,7 +2,6 @@ package com.ycwl.basic.service.mobile.impl;
|
||||
|
||||
import cn.hutool.http.HttpUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.ycwl.basic.constant.BaseContextHandler;
|
||||
import com.ycwl.basic.constant.NumberConstant;
|
||||
import com.ycwl.basic.enums.BizCodeEnum;
|
||||
@@ -13,7 +12,6 @@ import com.ycwl.basic.model.jwt.JwtInfo;
|
||||
import com.ycwl.basic.model.mobile.weChat.DTO.WeChatUserInfoDTO;
|
||||
import com.ycwl.basic.model.mobile.weChat.DTO.WeChatUserInfoUpdateDTO;
|
||||
import com.ycwl.basic.model.pc.member.entity.MemberEntity;
|
||||
import com.ycwl.basic.model.pc.member.req.MemberReqQuery;
|
||||
import com.ycwl.basic.model.pc.member.resp.MemberRespVO;
|
||||
import com.ycwl.basic.model.pc.mp.MpConfigEntity;
|
||||
import com.ycwl.basic.repository.ScenicRepository;
|
||||
@@ -88,13 +86,9 @@ public class AppMemberServiceImpl implements AppMemberService {
|
||||
throw new AppException(BizCodeEnum.SERVER_UNKONWN_ERROR, "未获取到当前用户openId");
|
||||
}
|
||||
|
||||
MemberRespVO memberRespVO = new MemberRespVO();
|
||||
JwtInfo jwtInfo = new JwtInfo();
|
||||
// 根据返回的openId,判断用户是否是新用户,是的话,将用户信息存到数据库;
|
||||
MemberReqQuery memberReqQuery = new MemberReqQuery();
|
||||
memberReqQuery.setOpenId(openId.toString());
|
||||
List<MemberRespVO> list = memberMapper.list(memberReqQuery);
|
||||
if (list.isEmpty()) {
|
||||
MemberRespVO memberRespVO = memberMapper.getByOpenId(openId.toString());
|
||||
if (memberRespVO == null) {
|
||||
MemberEntity memberEntity = new MemberEntity();
|
||||
memberEntity.setId(SnowFlakeUtil.getLongId());
|
||||
memberEntity.setScenicId(scenicId);
|
||||
@@ -107,6 +101,7 @@ public class AppMemberServiceImpl implements AppMemberService {
|
||||
memberEntity.setProvince(userInfoDTO.getProvince());
|
||||
memberEntity.setCity(userInfoDTO.getCity());
|
||||
memberMapper.add(memberEntity);
|
||||
memberRespVO = new MemberRespVO();
|
||||
memberRespVO.setId(memberEntity.getId());
|
||||
memberRespVO.setOpenId(memberEntity.getOpenId());
|
||||
memberRespVO.setNickname(memberEntity.getNickname());
|
||||
@@ -117,18 +112,6 @@ public class AppMemberServiceImpl implements AppMemberService {
|
||||
memberRespVO.setProvince(memberEntity.getProvince());
|
||||
memberRespVO.setCity(memberEntity.getCity());
|
||||
memberRespVO.setScenicId(memberEntity.getScenicId());
|
||||
} else {
|
||||
MemberRespVO temp = list.getFirst();
|
||||
memberRespVO.setId(temp.getId());
|
||||
memberRespVO.setOpenId(temp.getOpenId());
|
||||
memberRespVO.setNickname(temp.getNickname());
|
||||
memberRespVO.setAvatarUrl(temp.getAvatarUrl());
|
||||
memberRespVO.setAgreement(1);
|
||||
memberRespVO.setPhone(temp.getPhone());
|
||||
memberRespVO.setCountry(temp.getCountry());
|
||||
memberRespVO.setProvince(temp.getProvince());
|
||||
memberRespVO.setCity(temp.getCity());
|
||||
memberRespVO.setScenicId(temp.getScenicId());
|
||||
}
|
||||
jwtInfo.setUserId(memberRespVO.getId());
|
||||
jwtInfo.setName(memberRespVO.getNickname());
|
||||
|
@@ -20,8 +20,5 @@ public interface FaceSampleService {
|
||||
ApiResponse<List<FaceSampleRespVO>> list(FaceSampleReqQuery faceSampleReqQuery);
|
||||
ApiResponse<FaceSampleRespVO> getById(Long id);
|
||||
ApiResponse<Integer> add(FaceSampleEntity face);
|
||||
ApiResponse<Integer> deleteById(Long id);
|
||||
ApiResponse<Integer> deleteByIds(List<Long> ids);
|
||||
ApiResponse<Integer> update(FaceSampleEntity face);
|
||||
|
||||
}
|
||||
|
@@ -50,31 +50,4 @@ public class FaceSampleServiceImpl implements FaceSampleService {
|
||||
}
|
||||
return ApiResponse.success(i);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResponse<Integer> deleteById(Long id) {
|
||||
int i = faceSampleMapper.deleteById(id);
|
||||
if (i == 0) {
|
||||
return ApiResponse.fail("删除失败");
|
||||
}
|
||||
return ApiResponse.success(i);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResponse<Integer> deleteByIds(List<Long> ids) {
|
||||
int i = faceSampleMapper.deleteByIds(ids);
|
||||
if (i == 0) {
|
||||
return ApiResponse.fail("删除失败");
|
||||
}
|
||||
return ApiResponse.success(i);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResponse<Integer> update(FaceSampleEntity faceSample) {
|
||||
int i = faceSampleMapper.update(faceSample);
|
||||
if (i == 0) {
|
||||
return ApiResponse.fail("修改失败");
|
||||
}
|
||||
return ApiResponse.success(i);
|
||||
}
|
||||
}
|
||||
|
@@ -5,6 +5,8 @@ import com.github.pagehelper.PageInfo;
|
||||
import com.ycwl.basic.mapper.RenderWorkerMapper;
|
||||
import com.ycwl.basic.model.pc.renderWorker.entity.RenderWorkerEntity;
|
||||
import com.ycwl.basic.model.pc.renderWorker.req.RenderWorkerReqQuery;
|
||||
import com.ycwl.basic.model.task.req.ClientStatusReqVo;
|
||||
import com.ycwl.basic.repository.RenderWorkerRepository;
|
||||
import com.ycwl.basic.service.pc.RenderWorkerService;
|
||||
import com.ycwl.basic.utils.ApiResponse;
|
||||
import com.ycwl.basic.utils.SnowFlakeUtil;
|
||||
@@ -12,6 +14,8 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -23,23 +27,76 @@ public class RenderWorkerServiceImpl implements RenderWorkerService {
|
||||
|
||||
@Autowired
|
||||
private RenderWorkerMapper renderWorkerMapper;
|
||||
@Autowired
|
||||
private RenderWorkerRepository renderWorkerRepository;
|
||||
|
||||
@Override
|
||||
public ApiResponse<PageInfo<RenderWorkerEntity>> pageQuery(RenderWorkerReqQuery renderWorkerReqQuery) {
|
||||
PageHelper.startPage(renderWorkerReqQuery.getPageNum(), renderWorkerReqQuery.getPageSize());
|
||||
List<RenderWorkerEntity> list = renderWorkerMapper.list(renderWorkerReqQuery);
|
||||
list.forEach(worker -> {
|
||||
ClientStatusReqVo clientStatus = renderWorkerRepository.getWorkerHostStatus(worker.getId());
|
||||
if (clientStatus == null) {
|
||||
return;
|
||||
}
|
||||
worker.setCpuCount(clientStatus.getCpu_count());
|
||||
worker.setCpuUsage(clientStatus.getCpu_usage());
|
||||
// 上报的是字节,存储的是兆
|
||||
worker.setMemoryAvailable(clientStatus.getMemory_available().divide(BigDecimal.valueOf(1024 * 1024), RoundingMode.CEILING));
|
||||
worker.setMemoryTotal(clientStatus.getMemory_total().divide(BigDecimal.valueOf(1024 * 1024), RoundingMode.CEILING));
|
||||
|
||||
worker.setPlatform(clientStatus.getPlatform());
|
||||
worker.setRuntimeVersion(clientStatus.getRuntime_version());
|
||||
worker.setSupportFeature(String.join(",", clientStatus.getSupport_feature()));
|
||||
worker.setVersion(clientStatus.getVersion());
|
||||
worker.setUpdateAt(clientStatus.getUpdateAt());
|
||||
});
|
||||
PageInfo<RenderWorkerEntity> pageInfo = new PageInfo<>(list);
|
||||
return ApiResponse.success(pageInfo);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResponse<List<RenderWorkerEntity>> list(RenderWorkerReqQuery renderWorkerReqQuery) {
|
||||
return ApiResponse.success(renderWorkerMapper.list(renderWorkerReqQuery));
|
||||
List<RenderWorkerEntity> list = renderWorkerMapper.list(renderWorkerReqQuery);
|
||||
list.forEach(worker -> {
|
||||
ClientStatusReqVo clientStatus = renderWorkerRepository.getWorkerHostStatus(worker.getId());
|
||||
if (clientStatus == null) {
|
||||
return;
|
||||
}
|
||||
worker.setCpuCount(clientStatus.getCpu_count());
|
||||
worker.setCpuUsage(clientStatus.getCpu_usage());
|
||||
// 上报的是字节,存储的是兆
|
||||
worker.setMemoryAvailable(clientStatus.getMemory_available().divide(BigDecimal.valueOf(1024 * 1024), RoundingMode.CEILING));
|
||||
worker.setMemoryTotal(clientStatus.getMemory_total().divide(BigDecimal.valueOf(1024 * 1024), RoundingMode.CEILING));
|
||||
|
||||
worker.setPlatform(clientStatus.getPlatform());
|
||||
worker.setRuntimeVersion(clientStatus.getRuntime_version());
|
||||
worker.setSupportFeature(String.join(",", clientStatus.getSupport_feature()));
|
||||
worker.setVersion(clientStatus.getVersion());
|
||||
worker.setUpdateAt(clientStatus.getUpdateAt());
|
||||
});
|
||||
return ApiResponse.success(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResponse<RenderWorkerEntity> detail(Long id) {
|
||||
return ApiResponse.success(renderWorkerMapper.getById(id));
|
||||
RenderWorkerEntity worker = renderWorkerMapper.getById(id);
|
||||
|
||||
ClientStatusReqVo clientStatus = renderWorkerRepository.getWorkerHostStatus(worker.getId());
|
||||
if (clientStatus != null) {
|
||||
worker.setCpuCount(clientStatus.getCpu_count());
|
||||
worker.setCpuUsage(clientStatus.getCpu_usage());
|
||||
// 上报的是字节,存储的是兆
|
||||
worker.setMemoryAvailable(clientStatus.getMemory_available().divide(BigDecimal.valueOf(1024 * 1024), RoundingMode.CEILING));
|
||||
worker.setMemoryTotal(clientStatus.getMemory_total().divide(BigDecimal.valueOf(1024 * 1024), RoundingMode.CEILING));
|
||||
|
||||
worker.setPlatform(clientStatus.getPlatform());
|
||||
worker.setRuntimeVersion(clientStatus.getRuntime_version());
|
||||
worker.setSupportFeature(String.join(",", clientStatus.getSupport_feature()));
|
||||
worker.setVersion(clientStatus.getVersion());
|
||||
worker.setUpdateAt(clientStatus.getUpdateAt());
|
||||
}
|
||||
return ApiResponse.success(worker);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -59,11 +116,13 @@ public class RenderWorkerServiceImpl implements RenderWorkerService {
|
||||
|
||||
@Override
|
||||
public ApiResponse<Integer> deleteById(Long id) {
|
||||
renderWorkerRepository.clearCache(id);
|
||||
return ApiResponse.success(renderWorkerMapper.deleteById(id));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResponse<Integer> update(RenderWorkerEntity renderWorker) {
|
||||
renderWorkerRepository.clearCache(renderWorker.getId());
|
||||
int update = renderWorkerMapper.update(renderWorker);
|
||||
if (update == 0) {
|
||||
return ApiResponse.fail("渲染机修改失败");
|
||||
@@ -74,6 +133,7 @@ public class RenderWorkerServiceImpl implements RenderWorkerService {
|
||||
|
||||
@Override
|
||||
public ApiResponse<Integer> updateStatus(Long id) {
|
||||
renderWorkerRepository.clearCache(id);
|
||||
return ApiResponse.success(renderWorkerMapper.updateStatus(id));
|
||||
}
|
||||
}
|
||||
|
@@ -45,6 +45,7 @@ import com.ycwl.basic.notify.entity.NotifyContent;
|
||||
import com.ycwl.basic.notify.enums.NotifyType;
|
||||
import com.ycwl.basic.repository.DeviceRepository;
|
||||
import com.ycwl.basic.repository.FaceRepository;
|
||||
import com.ycwl.basic.repository.RenderWorkerRepository;
|
||||
import com.ycwl.basic.repository.ScenicRepository;
|
||||
import com.ycwl.basic.repository.VideoRepository;
|
||||
import com.ycwl.basic.repository.VideoTaskRepository;
|
||||
@@ -81,14 +82,10 @@ import java.util.stream.Collectors;
|
||||
@Slf4j
|
||||
@Service
|
||||
public class TaskTaskServiceImpl implements TaskService {
|
||||
@Autowired
|
||||
private TemplateMapper templateMapper;
|
||||
@Autowired
|
||||
private RenderWorkerMapper renderWorkerMapper;
|
||||
@Autowired
|
||||
private TaskMapper taskMapper;
|
||||
@Autowired
|
||||
private RedisTemplate<String, String> redisTemplate;
|
||||
private RenderWorkerRepository repository;
|
||||
@Autowired
|
||||
private FaceMapper faceMapper;
|
||||
@Autowired
|
||||
@@ -124,13 +121,12 @@ public class TaskTaskServiceImpl implements TaskService {
|
||||
@Autowired
|
||||
private VideoReUploader videoReUploader;
|
||||
|
||||
|
||||
private RenderWorkerEntity getWorker(@NonNull WorkerAuthReqVo req) {
|
||||
String accessKey = req.getAccessKey();
|
||||
if (accessKey == null) {
|
||||
return null;
|
||||
}
|
||||
return renderWorkerMapper.findByAccessKey(accessKey);
|
||||
return repository.getWorkerByAccessKey(accessKey);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -144,23 +140,7 @@ public class TaskTaskServiceImpl implements TaskService {
|
||||
worker.setStatus(null);
|
||||
// get status
|
||||
ClientStatusReqVo clientStatus = req.getClientStatus();
|
||||
if (clientStatus != null) {
|
||||
// 临时这么用下
|
||||
worker.setCpuCount(clientStatus.getCpu_count());
|
||||
worker.setCpuUsage(clientStatus.getCpu_usage());
|
||||
// 上报的是字节,存储的是兆
|
||||
worker.setMemoryAvailable(clientStatus.getMemory_available().divide(BigDecimal.valueOf(1024 * 1024), RoundingMode.CEILING));
|
||||
worker.setMemoryTotal(clientStatus.getMemory_total().divide(BigDecimal.valueOf(1024 * 1024), RoundingMode.CEILING));
|
||||
|
||||
worker.setPlatform(clientStatus.getPlatform());
|
||||
worker.setRuntimeVersion(clientStatus.getRuntime_version());
|
||||
worker.setSupportFeature(String.join(",", clientStatus.getSupport_feature()));
|
||||
worker.setVersion(clientStatus.getVersion());
|
||||
|
||||
worker.setUpdateAt(new Date());
|
||||
redisTemplate.opsForValue().set(TaskConstant.TASK_ONLINE_WORKER_KEY_PFX + worker.getId(), JSON.toJSONString(clientStatus), 60, TimeUnit.SECONDS);
|
||||
}
|
||||
renderWorkerMapper.update(worker);
|
||||
repository.setWorkerHostStatus(worker.getId(), clientStatus);
|
||||
TaskSyncRespVo resp = new TaskSyncRespVo();
|
||||
// Template
|
||||
List<TemplateRespVO> updTemplateList;
|
||||
|
Reference in New Issue
Block a user