impress/app/models
Emi Matchu 583f3c712f High-level caching for closet lists
Okay, so I still don't know why rendering is just so slow (though
migrating away from item translations did help!), but I can at least
cache entire closet lists as a basic measure.

That way, the first user to see the latest version of a closet list
will still need just as much time to load it… but *only* the ones that
have changed since last time (rather than always the full page), and
then subsequent users get to reuse it too!

Should help a lot for high-traffic lists, which incidentally are likely
to be the big ones belonging to highly active traders!

One big change we needed to make was to extract the `user-owns` and
`user-wants` classes (which we use for trade matches for *the user
viewing the list right now*) out of the cached HTML, and apply them
after with Javascript instead. I always dislike moving stuff to JS, but
the wins here seem. truly very very good, all things considered!
2024-02-20 18:43:39 -08:00
..
fundraising
item
alt_style.rb
application_record.rb
auth_record.rb Add AuthUser model, connecting to openneo_id db 2023-10-23 19:05:07 -07:00
auth_user.rb
closet_hanger.rb High-level caching for closet lists 2024-02-20 18:43:39 -08:00
closet_list.rb
closet_visibility.rb
color.rb
contribution.rb
item.rb Remove the Item::Translation model entirely 2024-02-20 16:57:45 -08:00
item_outfit_relationship.rb
neopets_connection.rb
neopets_page.rb Update most URLs to use HTTPS 2023-10-25 15:22:57 -07:00
outfit.rb In development, use local Impress 2020 to generate outfit images 2024-02-08 10:03:10 -08:00
parent_swf_asset_relationship.rb
pet.rb
pet_state.rb
pet_type.rb
species.rb
swf_asset.rb
user.rb
zone.rb