├── Inventory Management Usecase and Class Diagram.pdf ├── InventorySystem.java ├── InventorySystem └── README.md ├── LoadBalancer.java ├── Low Level Design - Inventory Management System.pdf ├── README.md ├── distributed-cache ├── DistributedCache.iml ├── Requirements.ME ├── distributed-cache.iml ├── pom.xml ├── src │ ├── main │ │ └── java │ │ │ ├── Cache.java │ │ │ ├── CacheBuilder.java │ │ │ ├── DataSource.java │ │ │ ├── events │ │ │ ├── Event.java │ │ │ ├── Eviction.java │ │ │ ├── Load.java │ │ │ ├── Update.java │ │ │ └── Write.java │ │ │ └── models │ │ │ ├── AccessDetails.java │ │ │ ├── EvictionAlgorithm.java │ │ │ ├── FetchAlgorithm.java │ │ │ ├── Record.java │ │ │ └── Timer.java │ └── test │ │ └── java │ │ ├── TestCache.java │ │ └── models │ │ └── SettableTimer.java └── target │ ├── classes │ ├── Cache.class │ ├── CacheBuilder.class │ ├── DataSource.class │ ├── events │ │ ├── Event.class │ │ ├── Eviction$Type.class │ │ ├── Eviction.class │ │ ├── Load.class │ │ ├── Update.class │ │ └── Write.class │ └── models │ │ ├── AccessDetails.class │ │ ├── EvictionAlgorithm.class │ │ ├── FetchAlgorithm.class │ │ ├── Record.class │ │ └── Timer.class │ └── test-classes │ ├── TestCache$1.class │ ├── TestCache$2.class │ ├── TestCache.class │ └── models │ └── SettableTimer.class ├── distributed-event-bus ├── README.ME ├── distributed-event-bus.iml ├── pom.xml ├── src │ ├── main │ │ ├── java │ │ │ ├── EventBus.java │ │ │ ├── exceptions │ │ │ │ ├── RetryLimitExceededException.java │ │ │ │ └── UnsubscribedPollException.java │ │ │ ├── lib │ │ │ │ └── KeyedExecutor.java │ │ │ ├── models │ │ │ │ ├── Event.java │ │ │ │ ├── EventType.java │ │ │ │ ├── FailureEvent.java │ │ │ │ └── Subscription.java │ │ │ └── util │ │ │ │ └── Timer.java │ │ └── resources │ │ │ └── application.properties │ └── test │ │ └── java │ │ ├── EventBusTest.java │ │ └── TestTimer.java └── target │ ├── classes │ ├── EventBus.class │ ├── META-INF │ │ └── distributed-event-bus.kotlin_module │ ├── application.properties │ ├── exceptions │ │ ├── RetryLimitExceededException.class │ │ └── UnsubscribedPollException.class │ ├── lib │ │ └── KeyedExecutor.class │ ├── models │ │ ├── Event.class │ │ ├── EventType.class │ │ ├── FailureEvent.class │ │ └── Subscription.class │ └── util │ │ └── Timer.class │ └── test-classes │ ├── EventBusTest.class │ └── TestTimer.class ├── rate-limiter ├── pom.xml ├── rate-limiter.iml ├── src │ ├── main │ │ └── java │ │ │ ├── TimerWheel.java │ │ │ ├── exceptions │ │ │ └── RateLimitExceededException.java │ │ │ ├── models │ │ │ └── Request.java │ │ │ └── utils │ │ │ └── Timer.java │ └── test │ │ └── java │ │ ├── RateLimitTest.java │ │ └── TestTimer.java └── target │ ├── classes │ ├── TimerWheel.class │ ├── exceptions │ │ └── RateLimitExceededException.class │ ├── models │ │ └── Request.class │ └── utils │ │ └── Timer.class │ └── test-classes │ ├── RateLimitTest.class │ └── TestTimer.class └── service-orchestrator ├── pom.xml ├── service-orchestrator.iml ├── src ├── main │ └── java │ │ ├── LoadBalancer.java │ │ ├── algorithms │ │ ├── ConsistentHashing.java │ │ ├── Router.java │ │ └── WeightedRoundRobin.java │ │ └── models │ │ ├── Node.java │ │ ├── Request.java │ │ └── Service.java └── test │ └── java │ ├── LBTester.java │ └── RouterTester.java └── target ├── classes ├── LoadBalancer.class ├── META-INF │ └── service-orchestrator.kotlin_module ├── algorithms │ ├── ConsistentHashing.class │ ├── Router.class │ └── WeightedRoundRobin.class └── models │ ├── Node.class │ ├── Request.class │ └── Service.class └── test-classes ├── LBTester.class ├── META-INF └── service-orchestrator.kotlin_module └── RouterTester.class /Inventory Management Usecase and Class Diagram.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/Inventory Management Usecase and Class Diagram.pdf -------------------------------------------------------------------------------- /InventorySystem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/InventorySystem.java -------------------------------------------------------------------------------- /InventorySystem/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/InventorySystem/README.md -------------------------------------------------------------------------------- /LoadBalancer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/LoadBalancer.java -------------------------------------------------------------------------------- /Low Level Design - Inventory Management System.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/Low Level Design - Inventory Management System.pdf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/README.md -------------------------------------------------------------------------------- /distributed-cache/DistributedCache.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/DistributedCache.iml -------------------------------------------------------------------------------- /distributed-cache/Requirements.ME: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/Requirements.ME -------------------------------------------------------------------------------- /distributed-cache/distributed-cache.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/distributed-cache.iml -------------------------------------------------------------------------------- /distributed-cache/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/pom.xml -------------------------------------------------------------------------------- /distributed-cache/src/main/java/Cache.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/Cache.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/CacheBuilder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/CacheBuilder.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/DataSource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/DataSource.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/events/Event.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/events/Event.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/events/Eviction.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/events/Eviction.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/events/Load.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/events/Load.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/events/Update.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/events/Update.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/events/Write.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/events/Write.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/models/AccessDetails.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/models/AccessDetails.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/models/EvictionAlgorithm.java: -------------------------------------------------------------------------------- 1 | package models; 2 | 3 | public enum EvictionAlgorithm { 4 | LRU, LFU 5 | } 6 | -------------------------------------------------------------------------------- /distributed-cache/src/main/java/models/FetchAlgorithm.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/models/FetchAlgorithm.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/models/Record.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/models/Record.java -------------------------------------------------------------------------------- /distributed-cache/src/main/java/models/Timer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/main/java/models/Timer.java -------------------------------------------------------------------------------- /distributed-cache/src/test/java/TestCache.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/test/java/TestCache.java -------------------------------------------------------------------------------- /distributed-cache/src/test/java/models/SettableTimer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/src/test/java/models/SettableTimer.java -------------------------------------------------------------------------------- /distributed-cache/target/classes/Cache.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/Cache.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/CacheBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/CacheBuilder.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/DataSource.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/DataSource.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/events/Event.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/events/Event.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/events/Eviction$Type.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/events/Eviction$Type.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/events/Eviction.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/events/Eviction.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/events/Load.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/events/Load.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/events/Update.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/events/Update.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/events/Write.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/events/Write.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/models/AccessDetails.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/models/AccessDetails.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/models/EvictionAlgorithm.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/models/EvictionAlgorithm.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/models/FetchAlgorithm.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/models/FetchAlgorithm.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/models/Record.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/models/Record.class -------------------------------------------------------------------------------- /distributed-cache/target/classes/models/Timer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/classes/models/Timer.class -------------------------------------------------------------------------------- /distributed-cache/target/test-classes/TestCache$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/test-classes/TestCache$1.class -------------------------------------------------------------------------------- /distributed-cache/target/test-classes/TestCache$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/test-classes/TestCache$2.class -------------------------------------------------------------------------------- /distributed-cache/target/test-classes/TestCache.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/test-classes/TestCache.class -------------------------------------------------------------------------------- /distributed-cache/target/test-classes/models/SettableTimer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-cache/target/test-classes/models/SettableTimer.class -------------------------------------------------------------------------------- /distributed-event-bus/README.ME: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/README.ME -------------------------------------------------------------------------------- /distributed-event-bus/distributed-event-bus.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/distributed-event-bus.iml -------------------------------------------------------------------------------- /distributed-event-bus/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/pom.xml -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/EventBus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/main/java/EventBus.java -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/exceptions/RetryLimitExceededException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/main/java/exceptions/RetryLimitExceededException.java -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/exceptions/UnsubscribedPollException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/main/java/exceptions/UnsubscribedPollException.java -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/lib/KeyedExecutor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/main/java/lib/KeyedExecutor.java -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/models/Event.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/main/java/models/Event.java -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/models/EventType.java: -------------------------------------------------------------------------------- 1 | package models; 2 | 3 | public enum EventType { 4 | PRIORITY, LOGGING, ERROR 5 | } 6 | -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/models/FailureEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/main/java/models/FailureEvent.java -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/models/Subscription.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/main/java/models/Subscription.java -------------------------------------------------------------------------------- /distributed-event-bus/src/main/java/util/Timer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/main/java/util/Timer.java -------------------------------------------------------------------------------- /distributed-event-bus/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /distributed-event-bus/src/test/java/EventBusTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/test/java/EventBusTest.java -------------------------------------------------------------------------------- /distributed-event-bus/src/test/java/TestTimer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/src/test/java/TestTimer.java -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/EventBus.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/EventBus.class -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/META-INF/distributed-event-bus.kotlin_module: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/META-INF/distributed-event-bus.kotlin_module -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/exceptions/RetryLimitExceededException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/exceptions/RetryLimitExceededException.class -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/exceptions/UnsubscribedPollException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/exceptions/UnsubscribedPollException.class -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/lib/KeyedExecutor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/lib/KeyedExecutor.class -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/models/Event.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/models/Event.class -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/models/EventType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/models/EventType.class -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/models/FailureEvent.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/models/FailureEvent.class -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/models/Subscription.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/models/Subscription.class -------------------------------------------------------------------------------- /distributed-event-bus/target/classes/util/Timer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/classes/util/Timer.class -------------------------------------------------------------------------------- /distributed-event-bus/target/test-classes/EventBusTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/test-classes/EventBusTest.class -------------------------------------------------------------------------------- /distributed-event-bus/target/test-classes/TestTimer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/distributed-event-bus/target/test-classes/TestTimer.class -------------------------------------------------------------------------------- /rate-limiter/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/pom.xml -------------------------------------------------------------------------------- /rate-limiter/rate-limiter.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/rate-limiter.iml -------------------------------------------------------------------------------- /rate-limiter/src/main/java/TimerWheel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/src/main/java/TimerWheel.java -------------------------------------------------------------------------------- /rate-limiter/src/main/java/exceptions/RateLimitExceededException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/src/main/java/exceptions/RateLimitExceededException.java -------------------------------------------------------------------------------- /rate-limiter/src/main/java/models/Request.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/src/main/java/models/Request.java -------------------------------------------------------------------------------- /rate-limiter/src/main/java/utils/Timer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/src/main/java/utils/Timer.java -------------------------------------------------------------------------------- /rate-limiter/src/test/java/RateLimitTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/src/test/java/RateLimitTest.java -------------------------------------------------------------------------------- /rate-limiter/src/test/java/TestTimer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/src/test/java/TestTimer.java -------------------------------------------------------------------------------- /rate-limiter/target/classes/TimerWheel.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/target/classes/TimerWheel.class -------------------------------------------------------------------------------- /rate-limiter/target/classes/exceptions/RateLimitExceededException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/target/classes/exceptions/RateLimitExceededException.class -------------------------------------------------------------------------------- /rate-limiter/target/classes/models/Request.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/target/classes/models/Request.class -------------------------------------------------------------------------------- /rate-limiter/target/classes/utils/Timer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/target/classes/utils/Timer.class -------------------------------------------------------------------------------- /rate-limiter/target/test-classes/RateLimitTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/target/test-classes/RateLimitTest.class -------------------------------------------------------------------------------- /rate-limiter/target/test-classes/TestTimer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/rate-limiter/target/test-classes/TestTimer.class -------------------------------------------------------------------------------- /service-orchestrator/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/pom.xml -------------------------------------------------------------------------------- /service-orchestrator/service-orchestrator.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/service-orchestrator.iml -------------------------------------------------------------------------------- /service-orchestrator/src/main/java/LoadBalancer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/main/java/LoadBalancer.java -------------------------------------------------------------------------------- /service-orchestrator/src/main/java/algorithms/ConsistentHashing.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/main/java/algorithms/ConsistentHashing.java -------------------------------------------------------------------------------- /service-orchestrator/src/main/java/algorithms/Router.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/main/java/algorithms/Router.java -------------------------------------------------------------------------------- /service-orchestrator/src/main/java/algorithms/WeightedRoundRobin.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/main/java/algorithms/WeightedRoundRobin.java -------------------------------------------------------------------------------- /service-orchestrator/src/main/java/models/Node.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/main/java/models/Node.java -------------------------------------------------------------------------------- /service-orchestrator/src/main/java/models/Request.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/main/java/models/Request.java -------------------------------------------------------------------------------- /service-orchestrator/src/main/java/models/Service.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/main/java/models/Service.java -------------------------------------------------------------------------------- /service-orchestrator/src/test/java/LBTester.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/test/java/LBTester.java -------------------------------------------------------------------------------- /service-orchestrator/src/test/java/RouterTester.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/src/test/java/RouterTester.java -------------------------------------------------------------------------------- /service-orchestrator/target/classes/LoadBalancer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/classes/LoadBalancer.class -------------------------------------------------------------------------------- /service-orchestrator/target/classes/META-INF/service-orchestrator.kotlin_module: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/classes/META-INF/service-orchestrator.kotlin_module -------------------------------------------------------------------------------- /service-orchestrator/target/classes/algorithms/ConsistentHashing.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/classes/algorithms/ConsistentHashing.class -------------------------------------------------------------------------------- /service-orchestrator/target/classes/algorithms/Router.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/classes/algorithms/Router.class -------------------------------------------------------------------------------- /service-orchestrator/target/classes/algorithms/WeightedRoundRobin.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/classes/algorithms/WeightedRoundRobin.class -------------------------------------------------------------------------------- /service-orchestrator/target/classes/models/Node.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/classes/models/Node.class -------------------------------------------------------------------------------- /service-orchestrator/target/classes/models/Request.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/classes/models/Request.class -------------------------------------------------------------------------------- /service-orchestrator/target/classes/models/Service.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/classes/models/Service.class -------------------------------------------------------------------------------- /service-orchestrator/target/test-classes/LBTester.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/test-classes/LBTester.class -------------------------------------------------------------------------------- /service-orchestrator/target/test-classes/META-INF/service-orchestrator.kotlin_module: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/test-classes/META-INF/service-orchestrator.kotlin_module -------------------------------------------------------------------------------- /service-orchestrator/target/test-classes/RouterTester.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InterviewReady/Low-Level-Design/HEAD/service-orchestrator/target/test-classes/RouterTester.class --------------------------------------------------------------------------------