memorium/lib/cache.ts

30 lines
702 B
TypeScript

import { connect } from "https://deno.land/x/redis/mod.ts";
const REDIS_HOST = Deno.env.get("REDIS_HOST");
const REDIS_PASS = Deno.env.get("REDIS_PASS");
const REDIS_PORT = Deno.env.get("REDIS_PORT");
async function createCache() {
if (REDIS_HOST && REDIS_PASS) {
const client = await connect({
password: REDIS_PASS,
hostname: REDIS_HOST,
port: REDIS_PORT || 6379,
});
console.log("COnnected to redis");
return client;
}
return new Map<string, any>();
}
const cache = await createCache();
export async function get(id: string) {
return await cache.get(id);
}
export async function set(id: string, content: any) {
return await cache.set(id, content);
}