async-cache-dedupe icon indicating copy to clipboard operation
async-cache-dedupe copied to clipboard

Is there a way to tell if the result comes from a cache hit or miss?

Open ligreman opened this issue 1 year ago • 4 comments

First of all thanks for this great plugin.

I'm using it to cache some database searchs and I want to answer the clients with a X-Cache-Status header that informs if the data was taken from cache or from database (header values Hit or Miss).

cache.define('fetchSomething', async (k) => {
  return { k }
})

fastify.get('/foo', async function (request, reply) {
        const p1 = await cache.fetchSomething(42)

        // If p1 comes from a cache Hit, set reply header[X-Cache-Status] to Hit. Else Miss.

        return reply.send({msg: 'Hello'});
    });

Is there a way to tell if the result of fetchSomething comes from the cache (Hit) or from database (Miss)? I've been struggling with the onHit, onMiss... events but they only receive the key as parameter.

Thanks!

ligreman avatar Apr 10 '24 19:04 ligreman

Actually it would be a great feature to add (maybe behind an option).

mcollina avatar Apr 10 '24 20:04 mcollina

Hi, @mcollina ! Is this project still maintained and developed by you ? The last release was 7mth ago though.

I'd like to help with this issue and contribute, but I'm not sure if the project is going to be taken further or not.

MyNameIsNeXTSTEP avatar Nov 25 '24 16:11 MyNameIsNeXTSTEP

I see here another collaborator @simone-sanfratello, hi! Can you answer my question above too please.

MyNameIsNeXTSTEP avatar Nov 25 '24 16:11 MyNameIsNeXTSTEP

@MyNameIsNeXTSTEP this project is maintained. It's in a stable state and I use it kind of everywhere. However it works well for me, so you might not see many new features coming unless I receive a PR.

(My github notifications are very busy, sorry for the delay waiting, a PR to fix would be amazing!)

mcollina avatar Dec 07 '24 00:12 mcollina