feat: add memory cache to boost performance (#2620)

* feat: add memory cache to boost performance

* fix: tests

* fix: logging

* fix: missing commented stuff
This commit is contained in:
Jérémy M
2023-11-21 18:29:31 +01:00
committed by GitHub
parent 74e0122294
commit dd125ddfcc
27 changed files with 458 additions and 17 deletions

View File

@ -0,0 +1,16 @@
import { MemoryStorageSerializer } from 'src/integrations/memory-storage/serializers/interfaces/memory-storage-serializer.interface';
export class MemoryStorageDefaultSerializer<T>
implements MemoryStorageSerializer<T>
{
serialize(item: T): string {
if (typeof item !== 'string') {
throw new Error('DefaultSerializer can only serialize strings');
}
return item;
}
deserialize(data: string): T {
return data as unknown as T;
}
}

View File

@ -0,0 +1,4 @@
export interface MemoryStorageSerializer<T> {
serialize(item: T): string;
deserialize(data: string): T;
}

View File

@ -0,0 +1,13 @@
import { MemoryStorageSerializer } from 'src/integrations/memory-storage/serializers/interfaces/memory-storage-serializer.interface';
export class MemoryStorageJsonSerializer<T>
implements MemoryStorageSerializer<T>
{
serialize(item: T): string {
return JSON.stringify(item);
}
deserialize(data: string): T {
return JSON.parse(data) as T;
}
}