0.1.2 • Published 6 months ago

next-paylaod-hanlder v0.1.2

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

next-payload-handler · MIT License

next-payload-handlerNext.js의 payload cache key-value를 Redis에 저장하고 관리할 수 있는 라이브러리입니다.
Next.js의 캐시 키를 커스텀하고, 이를 Next.js 서버뿐만 아니라 백엔드/BFF 서버에서도 핸들링할 수 있도록 도와줍니다.

설치

npm install next-payload-handler

특징

  • Next.js의 payload key-value를 Redis에 저장
    • Next.js의 fetch cache key 및 payload 데이터를 Redis에 저장하여, 분산된 환경에서도 일관된 캐싱을 유지할 수 있습니다.
  • 커스텀 키 지원 (fetch 옵션의 tag 사용)
    • fetch()tags 옵션을 활용하여 캐시 키를 커스텀 가능.
    • Next.js 서버가 아닌 백엔드/BFF 서버에서도 Next.js의 캐시를 핸들링할 수 있습니다.
  • 간편한 설정
    • Redis 정보만 설정하면 바로 사용할 수 있습니다.
    • 기존 Next.js 프로젝트에 간단하게 추가 가능.

사용법

next config 설정

// next.config.js
const nextConfig = {
  cacheHandler: require.resolve("./cache-handler.mjs"),
  cacheMaxMemorySize: 0,
};

module.exports = nextConfig;

redis 연결

// cache-handler.mjs
import PayloadCacheHandler from 'next-paylaod-hanlder';

class CustomCacheHandler extends PayloadCacheHandler {
  constructor() {
    super({
      socket: { host: "127.0.0.1", port: 6379 }
    });
  }
}

export default CustomCacheHandler;

커스텀 캐시 키 설정

fetch('/api/data', {
  next: { tags: ['custom-key'] },
});

캐시 키 관리 (BFF/백엔드에서 캐시 삭제)

redisClient.del('custom-key')
0.1.2

6 months ago

0.1.0-beta-1

6 months ago

0.1.0-beta-0

6 months ago

0.1.0

6 months ago

0.0.1-beta.16

6 months ago

0.0.1-beta.15

6 months ago

0.0.1-beta.14

6 months ago

0.0.1-beta.13

6 months ago

0.0.1-beta.12

6 months ago

0.0.1-beta.11

9 months ago

0.0.1-beta.10

9 months ago

0.0.1-beta.9

9 months ago

0.0.1-beta.8

9 months ago

0.0.1-beta.7

9 months ago

0.0.1-beta.6

9 months ago

0.0.1-beta.4

9 months ago

0.0.1-beta.3

9 months ago

0.0.1-beta.2

9 months ago

0.0.1-beta.1

9 months ago

0.0.1-beta.0

9 months ago