discourse/app
Sam 33a0ad1b69
PERF: introduce site/global emoji cache (#15899)
Previously calls such as `Emoji["smile"]` would force a full dehydration of
objects from Redis.

This introduces a version safe site and global emoji cache so lookups are
cheap. It eliminates iterating through the list of emojis and pulling from
redis.

Distributed cache uses a normalized name as the key and stores an Array tuple
with version and Emoji. Successful hits always confirm version matches.

Interface to Emoji object remains unchanged.

We opted for 2 caches to improve reuse on multisites. misses though will be
stored in both caches. If there is a hit on the global cache we can avoid
looking up in site local cache and storing a miss there.
2022-02-16 12:46:17 +11:00
..
assets UX: prevent user menu overflow on tiny screens (#15964) 2022-02-15 20:13:11 -05:00
controllers FIX: Do not increase invite count for current user (#15952) 2022-02-15 17:35:58 +02:00
helpers FIX: Update application_helper logic now that Ember CLI is default (#15935) 2022-02-14 13:48:18 +00:00
jobs DEV: Add bounce_error_code to EmailLog (#15948) 2022-02-15 14:17:26 +10:00
mailers FEATURE: Allow sending group SMTP emails with from alias (#15687) 2022-02-07 13:52:01 +10:00
models PERF: introduce site/global emoji cache (#15899) 2022-02-16 12:46:17 +11:00
serializers FEATURE: Add external_id to topics (#15825) 2022-02-08 20:55:32 -07:00
services DEV: Fix small typo. (#15904) 2022-02-11 11:51:51 +08:00
views PERF: Update ember-auto-import and webpack (#15919) 2022-02-14 11:21:39 +00:00