|
All checks were successful
deploy / deploy (push) Successful in 1m26s
Every shop page load was triggering ~18 DB queries for data that rarely changes (theme settings, nav items, categories, shipping countries, logo, header image). On a shared-cpu-1x Fly machine with SQLite this was the primary performance bottleneck. - Add SettingsCache GenServer+ETS for all non-encrypted settings - Cache list_categories() with single-query N+1 fix (correlated subquery) - Cache list_available_countries_with_names() in shipping - Cache Media.get_logo() and Media.get_header() - Remove duplicate LoadTheme plug from :shop and :admin pipelines - Invalidate caches on writes (put_setting, product sync, media upload) - Clear caches between tests via DataCase/ConnCase setup Per-page queries reduced from ~18 to ~2. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| fixtures | ||
| bench_repo.ex | ||
| conn_case.ex | ||
| data_case.ex | ||
| mocks.ex | ||