From a45929753f1677ebf0bb4dad5672b0ee25a0e78c Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Sun, 6 Apr 2025 17:46:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=89=8B=E5=8A=A8=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/service/task/impl/TaskFaceServiceImpl.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/java/com/ycwl/basic/service/task/impl/TaskFaceServiceImpl.java b/src/main/java/com/ycwl/basic/service/task/impl/TaskFaceServiceImpl.java index c3f5038..87bfc74 100644 --- a/src/main/java/com/ycwl/basic/service/task/impl/TaskFaceServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/task/impl/TaskFaceServiceImpl.java @@ -299,6 +299,7 @@ public class TaskFaceServiceImpl implements TaskFaceService { ListFaceEntitiesRequest listFaceEntitiesRequest = new ListFaceEntitiesRequest(); AtomicInteger count = new AtomicInteger(0); IAcsClient client = getClient(); + FixedRateLimiter limiter = new FixedRateLimiter(2); listFaceEntitiesRequest.setDbName(USER_FACE_DB_NAME + String.valueOf(scenicId)); listFaceEntitiesRequest.setToken(null); @@ -307,6 +308,10 @@ public class TaskFaceServiceImpl implements TaskFaceService { while (true) { try { listFaceEntitiesRequest.setOffset(count.get()); + try { + limiter.acquire(); + } catch (InterruptedException ignored) { + } ListFaceEntitiesResponse listFaceEntitiesResponse = client.getAcsResponse(listFaceEntitiesRequest); if (listFaceEntitiesResponse == null || listFaceEntitiesResponse.getData() == null || listFaceEntitiesResponse.getData().getEntities() == null || listFaceEntitiesResponse.getData().getEntities().isEmpty()) { break; @@ -343,6 +348,10 @@ public class TaskFaceServiceImpl implements TaskFaceService { try { while (true) { listFaceEntitiesRequest.setOffset(count.get()); + try { + limiter.acquire(); + } catch (InterruptedException ignored) { + } ListFaceEntitiesResponse listFaceEntitiesResponse = client.getAcsResponse(listFaceEntitiesRequest); if (listFaceEntitiesResponse == null || listFaceEntitiesResponse.getData() == null || listFaceEntitiesResponse.getData().getEntities() == null || listFaceEntitiesResponse.getData().getEntities().isEmpty()) { break;