Java Semaphore
클래스를 사용하여 leaky bucket algorithm과 밀접하게 유사한 것을 구현하려고하고 있으며 이것이 적합할지 궁금합니다. 목표는 공유 리소스에 대한 쓰기 속도를 제한하는 것이며, 한 스레드가 주기적으로 세마포어에 대한 허가를 공개하고 작업 스레드가 원하는 항목의 크기만큼 많은 허가를 얻으려고 시도 할 것입니다 쓰기.Java Semaphore 클래스를 사용한 누수 버킷 류 레이트 제한
궁금한 점은 내 뒤에서 int
하나를 사용하여 구현했는지 또는 활성 사용권 한 (사용 가능한 일종의 대기열을 사용하여 구현 됨)의 공간 사용량이 선형인지 여부입니다. 공간 (그리고 시간) 선형입니다, 그럼 분명히 바이트로 속도에 대해 얘기하는 피하고 싶습니다. 그것은 단지 int
을 있다면, 나는 매우 높은 비율에 대한 오버 플로우 이외의 그러한 우려가 없어야한다
누구나 어떤 아이디어가 (이 경우 나는 long
-backed Semaphore
이 원하는 것)?
체크 아웃 https://github.com/bbeck/token-bucket – kervin