forked from OpenNeo/impress
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! |
||
|---|---|---|
| .. | ||
| fundraising | ||
| item | ||
| alt_style.rb | ||
| application_record.rb | ||
| auth_record.rb | ||
| auth_user.rb | ||
| closet_hanger.rb | ||
| closet_list.rb | ||
| closet_visibility.rb | ||
| color.rb | ||
| contribution.rb | ||
| item.rb | ||
| item_outfit_relationship.rb | ||
| neopets_connection.rb | ||
| neopets_page.rb | ||
| outfit.rb | ||
| parent_swf_asset_relationship.rb | ||
| pet.rb | ||
| pet_state.rb | ||
| pet_type.rb | ||
| species.rb | ||
| swf_asset.rb | ||
| user.rb | ||
| zone.rb | ||