diff --git a/VideoAnalysisCore/Common/RedisExpand.cs b/VideoAnalysisCore/Common/RedisExpand.cs
index 11fa01d..7cf7572 100644
--- a/VideoAnalysisCore/Common/RedisExpand.cs
+++ b/VideoAnalysisCore/Common/RedisExpand.cs
@@ -70,7 +70,7 @@ namespace VideoAnalysisCore.Common
///
/// 任务对象地址
///
- public static string Task(object taskId) => BaseKey + "Task:" + taskId;
+ public static string Task(object taskId) => BaseKey + "TaskInfo:" + taskId;
public static string IDTask => BaseKey + "Services:" + AppCommon.Config.ID;
public static string TaskGPT(object taskId) => Task(taskId) + ":GPTCached";
///
@@ -179,7 +179,7 @@ namespace VideoAnalysisCore.Common
///
public void SetTaskGPTCached(object taskId, string time, object? data)
{
- Redis.Set(RedisExpandKey.TaskGPT(taskId) + ":" + time, data, 3600 * 24);
+ Redis.Set(RedisExpandKey.TaskGPT(taskId) + ":" + time, data, timeoutSeconds: 3600 * 24);
}
///
/// 加入到消费队列
@@ -224,6 +224,9 @@ namespace VideoAnalysisCore.Common
if (taskId is null) throw new Exception("taskId为空");
if (Redis is null) throw new Exception("redis未初始化");
+ //设置任务Redis缓存过期时间
+ Redis.Expire(RedisExpandKey.Task(taskId), 60 * 60 * 24 * 14);
+
var startTime = Redis.HMGet>(RedisExpandKey.Task(taskId), "StartTime").FirstOrDefault();
if (startTime is null)
startTime = new Dictionary();
diff --git a/VideoAnalysisCore/Controllers/ApiController.cs b/VideoAnalysisCore/Controllers/ApiController.cs
index 8dbba4e..a8d2c39 100644
--- a/VideoAnalysisCore/Controllers/ApiController.cs
+++ b/VideoAnalysisCore/Controllers/ApiController.cs
@@ -19,6 +19,7 @@ using VideoAnalysisCore.Common.Expand;
using Microsoft.Extensions.DependencyInjection;
using System.Threading.Tasks;
using VideoAnalysisCore.Model.ǿ;
+using VideoAnalysisCore.Model.Interface;
namespace VideoAnalysisCore.Controllers
{
@@ -76,9 +77,22 @@ namespace VideoAnalysisCore.Controllers
#endif
+ ///
+ /// id
+ ///
+ /// Ƿִ
+ ///
+ [HttpPost(Name = "JoinQueue")]
+ public IActionResult JoinQueue(long[] ids)
+ {
+ if ( ids == null || ids.Count()==0)
+ return BadRequest("¼Ч");
+ redisManager.JoinQueue(ids);
+ return Ok();
+ }
///
- /// ʼ
+ /// ǰ ִ
///
/// Ƿִ
///
@@ -204,11 +218,7 @@ namespace VideoAnalysisCore.Controllers
VideoType=req.VideoType
};
//
- var hashEntries = task.GetType()
- .GetProperties(BindingFlags.Public | BindingFlags.Instance)
- .ToDictionary(s => s.Name, s => s.GetValue(task));
await videoTaskDB.InsertAsync(task);
- redisManager.Redis.HMSet(RedisExpandKey.Task(task.Id), hashEntries);
redisManager.Redis.LPush(RedisExpandKey.ChannelKey, task.Id);
return Ok(task.Id);
}