Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: 대기열의 사용자를 메모리 작업 가능 공간으로 이동 기능은 동시에 한 번만 실행된다. #99

Merged
merged 9 commits into from
Aug 20, 2024

Conversation

lass9436
Copy link
Contributor

⛏ 작업 사항

  • 자바 자료구조를 이용해 사용자의 동시 요청을 제어하는 aop를 구현하였습니다.
  • 해당 aop는 @debounce 어노테이션 또는 WaitingSystem의 moveUserToRunning()메서드를 포인트컷으로 합니다.
  • ReentrantLock 을 이용하여 제어합니다.
  • 기존에 동시 요청 제어를 위해 락이라는 다음의 이유로 디바운스라는 용어로 변경하였습니다.
    • 동시에 하나의 요청만 실행되고 다른 모든 요청은 대기하지 않고 곧바로 종료된다는 점
    • 10초를 타임아웃으로 하여 해당 시간동안의 변경사항(작업 가능 공간의 빈 자리 여부)를 모아서 실행한다는 점

📝 작업 요약

  • 자바 자료구조를 이용한 디바운스 aop 구현

💡 관련 이슈

@ContextConfiguration 대신 @import 를 사용하였습니다.
lass9436 and others added 3 commits August 20, 2024 00:12
15초 동안 1초마다 메서드를 호출해서 debounce 를 통해 총 2번 실행되는 테스트를 추가하여 debounce 를 검증하였습니다.
@lass9436 lass9436 merged commit 0ce325c into main Aug 20, 2024
1 check passed
@lass9436 lass9436 deleted the feature/jvm-waiting-event-debounce branch August 20, 2024 01:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Feature 기능 구현
Projects
None yet
4 participants