esi / esi-issues

Issue tracking and feature requests for ESI
https://esi.evetech.net/
209 stars 23 forks source link

Inconsistent cache times #546

Closed CarbonAlabel closed 5 years ago

CarbonAlabel commented 7 years ago

I've noticed several ESI endpoints whose cache times are inconsistent with similar endpoints and/or direct downgrades from the XML/CREST endpoints they are supposed to replace. Here is a list of them, along with my specific complaints.

aquarhead commented 7 years ago

Fixed character lp, set to 3600 sec as in CREST.

aquarhead commented 7 years ago

Fixed corporation wallet journal to be 3600 sec, same as character ones.

DaneelTrevize commented 6 years ago

What can even change for an alliance's data? Just the executor_corporation_id, and that's not likely done every 5 minutes...

Somewhat similarly, for the character, isn't it just corporation_id and description? CREST's 30mins seems fair.

ghost commented 5 years ago

Decisions time:

I agree with daniel that characters, corporations and alliances just don't change enough to justify a 5 minute timer and the associated cache miss rate, I'm going to leave them all at 1 hour.

Point taken on the implants, I'm going to lower that to two minutes.

The location endpoint is on a 5 second timer so that it can detect people jumping through a wormhole, seeing hatred on the other side and skiddaddling. It's an expensive endpoint for us as a result because people poll it ceaselessly. What's the usecase for online status being 5 seconds?

Attributes change with implants and jump clones, so it might be marginally useful, I don't see why this can't be two minutes as well.

30 seconds is totally adequate for server status.

The corporation journal/transaction information is 1 hour, same as personal. It's also a relatively heavy call. Again, specific use case for it being lower please.

ghost commented 5 years ago

Apparently someone already lowered the implants cache to 5 minutes, but I don't see why it shouldn't be 2 same as clones.

itshouldntdothis commented 5 years ago

It would be nice if the wallet journal/transaction endpoints could have the cache reduced to allow for real-time isk generation tracking, another example would be the ability to notify a twitch stream that a donation has been made.

ghost commented 5 years ago

Implants and clones changes are deployed.

Twitch stream rewards is a pretty persuasive argument, but I don't know much about CCP policies in that area, I'm talking to people about it.

CarbonAlabel commented 5 years ago

Shortening the cache time on the wallet endpoints can be discussed in https://github.com/esi/esi-issues/issues/829. As all the other points have either been resolved or given an explanation for, I'm closing this issue.