缓存及队列实现抽象,提供JDK和REDIS两种实现

This commit is contained in:
陈精华
2019-04-08 17:50:13 +08:00
committed by kl
parent dd876792c7
commit 3dd6609fd6
13 changed files with 265 additions and 66 deletions

View File

@@ -1,12 +1,10 @@
package cn.keking.web.controller;
import cn.keking.service.FileConverQueueTask;
import cn.keking.service.FilePreview;
import cn.keking.service.FilePreviewFactory;
import cn.keking.service.cache.CacheService;
import org.apache.commons.io.IOUtils;
import org.redisson.api.RBlockingQueue;
import org.redisson.api.RedissonClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
@@ -26,7 +24,6 @@ import java.net.URLConnection;
import java.net.URLDecoder;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* @author yudian-it
@@ -38,7 +35,7 @@ public class OnlinePreviewController {
FilePreviewFactory previewFactory;
@Autowired
RedissonClient redissonClient;
CacheService cacheService;
/**
* @param url
@@ -126,8 +123,7 @@ public class OnlinePreviewController {
@GetMapping("/addTask")
@ResponseBody
public String addQueueTask(String url) {
final RBlockingQueue<String> queue = redissonClient.getBlockingQueue(FileConverQueueTask.queueTaskName);
queue.addAsync(url);
cacheService.addQueueTask(url);
return "success";
}