Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Persistent cache mellom server-restarts #55

Open
teodorlu opened this issue Dec 12, 2023 · 0 comments
Open

Persistent cache mellom server-restarts #55

teodorlu opened this issue Dec 12, 2023 · 0 comments
Labels
opsjon Something we can choose to do

Comments

@teodorlu
Copy link
Contributor

Problem: cache er ikke persistent mellom server-restarts

I dag bruker vi en i minne-cache for dokument-HTML:

(def markdown->html+info
(cache/cache-fn-by (fn markdown->html+info [markdown]
(let [pandoc (pandoc/from-markdown markdown)]
{:doc-html (pandoc/to-html pandoc)
:title (pandoc/infer-title pandoc)}))
identity))

Det fører til at første last etter hver restart er treg (x 2 replikaer).

Løsningsforslag

Iterapp/HOPS kan lett gi oss en persistent Postgres. Jeg har nylig hatt svært god erfaring med postgres-klienten igrishaev/pg, har lyst til å prøve den.

Til lokal utvikling kan vi fortsette å støtte lokal in-memory cache. Men hvis en Postgres connection string er satt, kan vi bruke den.

Gotchas

Hvis vi trår feil med cache-invalidering og cache-keys, kan vi lage oss problemer. Feks hvis vi oppdaterer Pandoc, og fortsetter å servere HTML laget av gammel Pandoc. Vi må tenke gjennom hvilken cache key vi ønsker.

@teodorlu teodorlu added the opsjon Something we can choose to do label Dec 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
opsjon Something we can choose to do
Projects
None yet
Development

No branches or pull requests

1 participant