CacheManager
Tổng quan
CacheManager dựa trên node-cache-manager, cung cấp chức năng quản lý module Cache cho NocoBase. Các kiểu Cache có sẵn là:
- memory - lru-cache do node-cache-manager cung cấp mặc định
- redis - được hỗ trợ bởi node-cache-manager-redis-yet
Có thể đăng ký mở rộng thêm các kiểu khác qua API.
Giải thích khái niệm
-
Store: Định nghĩa một phương thức cache, gồm phương thức factory tạo cache và các cấu hình liên quan. Mỗi phương thức cache có một định danh duy nhất, được cung cấp khi đăng ký. Định danh duy nhất tương ứng với hai phương thức cache có sẵn là
memoryvàredis. -
Phương thức factory Store: Do
node-cache-managervà các package mở rộng cung cấp, dùng để tạo cache. Ví dụ'memory'mànode-cache-managercung cấp mặc định,redisStoremànode-cache-manager-redis-yetcung cấp, v.v. Tức là tham số đầu tiên của phương thứccachingcủanode-cache-manager. -
Cache: Lớp được NocoBase đóng gói, cung cấp các phương thức liên quan đến sử dụng cache. Khi sử dụng cache thực tế thì thao tác với instance của
Cache. Mỗi instanceCachecó một định danh duy nhất, có thể đóng vai trò namespace để phân biệt các module khác nhau.
Phương thức của lớp
constructor()
Chữ ký
constructor(options?: CacheManagerOptions)
Kiểu
Thông tin chi tiết
CacheManagerOptions
StoreOptions
options mặc định
Tham số options sẽ được merge với options mặc định, các nội dung đã có trong options mặc định có thể bỏ qua, ví dụ:
registerStore()
Đăng ký phương thức cache mới, tham khảo
Chữ ký
registerStore(options: { name: string } & StoreOptions)
createCache()
Tạo cache, tham khảo
Chữ ký
createCache(options: { name: string; prefix?: string; store?: string; [key: string]: any }): Promise<Cache>
Thông tin chi tiết
options
Khi store được bỏ qua, sẽ dùng defaultStore, lúc này phương thức cache sẽ thay đổi theo phương thức cache mặc định của hệ thống.
Khi không có cấu hình tùy chỉnh, sẽ trả về không gian cache mặc định được tạo bởi cấu hình toàn cục, được chia sẻ cho phương thức cache hiện tại. Khuyến nghị thêm prefix để tránh xung đột key.
Cache
Tham khảo Cache
getCache()
Lấy cache tương ứng.
Chữ ký
getCache(name: string): Cache
flushAll()
Reset toàn bộ cache.
close()
Đóng tất cả kết nối middleware cache.

