Przy danym endpoincie używam cache z guavy.
cache = CacheBuilder.newBuilder()
.maximumSize(10_000)
.expireAfterWrite(200, TimeUnit.MILLISECONDS)
.build()
Wartosc z cache ma sie usuwac po 200ms.
Pytanie: Co w przypadku jeśli ktoś np. naśle atak ddos np. 5000requestów, a średnio moja cachowana operacja wykonuje się np. 500ms?
Chodzi o to, że jeśli będzie moment w którym wartość z cache po tych 200ms zostanie usunięta to żeby reszta (około 5k~) requestów nie brała się za obliczanie tej operacji która jest cachowana.
Czy cache guavy oferuje jakieś zabezpieczenie przed czymś takim? Lockowanie nie wchodzi w gre