Browse Source

feat(docs): 添加Caching模块文档

pull/1049/head
feijie 1 year ago
parent
commit
5440f0ac2f
  1. 36
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application.Contracts/README.EN.md
  2. 36
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application.Contracts/README.md
  3. 46
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application/README.EN.md
  4. 46
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application/README.md
  5. 44
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Domain/README.EN.md
  6. 44
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Domain/README.md
  7. 53
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.HttpApi/README.EN.md
  8. 53
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.HttpApi/README.md
  9. 61
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.StackExchangeRedis/README.EN.md
  10. 61
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.StackExchangeRedis/README.md

36
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application.Contracts/README.EN.md

@ -0,0 +1,36 @@
# LINGYUN.Abp.CachingManagement.Application.Contracts
Cache management application service contract module.
## Interfaces
### ICacheAppService
Cache management application service interface, providing the following features:
* `GetKeysAsync`: Get cache key list
* `GetValueAsync`: Get cache value
* `SetAsync`: Set cache value
* `RefreshAsync`: Refresh cache
* `RemoveAsync`: Remove cache
## Permissions
* AbpCachingManagement.Cache: Cache management
* AbpCachingManagement.Cache.Refresh: Refresh cache
* AbpCachingManagement.Cache.Delete: Delete cache
* AbpCachingManagement.Cache.ManageValue: Manage cache value
## Installation
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## More
For more information, please refer to the following resources:
* [Application Service Implementation](../LINGYUN.Abp.CachingManagement.Application/README.EN.md)
* [HTTP API](../LINGYUN.Abp.CachingManagement.HttpApi/README.EN.md)
* [Domain Layer](../LINGYUN.Abp.CachingManagement.Domain/README.EN.md)

36
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application.Contracts/README.md

@ -0,0 +1,36 @@
# LINGYUN.Abp.CachingManagement.Application.Contracts
缓存管理应用服务契约模块。
## 接口
### ICacheAppService
缓存管理应用服务接口,提供以下功能:
* `GetKeysAsync`: 获取缓存键列表
* `GetValueAsync`: 获取缓存值
* `SetAsync`: 设置缓存值
* `RefreshAsync`: 刷新缓存
* `RemoveAsync`: 删除缓存
## 权限
* AbpCachingManagement.Cache:缓存管理
* AbpCachingManagement.Cache.Refresh:刷新缓存
* AbpCachingManagement.Cache.Delete:删除缓存
* AbpCachingManagement.Cache.ManageValue:管理缓存值
## 安装
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## 更多
有关更多信息,请参阅以下资源:
* [应用服务实现](../LINGYUN.Abp.CachingManagement.Application/README.md)
* [HTTP API](../LINGYUN.Abp.CachingManagement.HttpApi/README.md)
* [领域层](../LINGYUN.Abp.CachingManagement.Domain/README.md)

46
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application/README.EN.md

@ -0,0 +1,46 @@
# LINGYUN.Abp.CachingManagement.Application
Implementation of the cache management application service module.
## Features
* Implements the `ICacheAppService` interface, providing basic cache management functions:
* Get cache key list
* Get cache value
* Set cache value
* Refresh cache
* Delete cache
## Permissions
* AbpCachingManagement.Cache: Cache management
* AbpCachingManagement.Cache.Refresh: Refresh cache
* AbpCachingManagement.Cache.Delete: Delete cache
* AbpCachingManagement.Cache.ManageValue: Manage cache value
## Installation
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## Configuration and Usage
1. First, you need to install the corresponding cache implementation module, for example: [LINGYUN.Abp.CachingManagement.StackExchangeRedis](../LINGYUN.Abp.CachingManagement.StackExchangeRedis/README.EN.md)
2. Add the following code in the `ConfigureServices` method of your module:
```csharp
Configure<AbpAutoMapperOptions>(options =>
{
options.AddProfile<AbpCachingManagementApplicationAutoMapperProfile>(validate: true);
});
```
## More
For more information, please refer to the following resources:
* [Application Service Contracts](../LINGYUN.Abp.CachingManagement.Application.Contracts/README.EN.md)
* [HTTP API](../LINGYUN.Abp.CachingManagement.HttpApi/README.EN.md)
* [Domain Layer](../LINGYUN.Abp.CachingManagement.Domain/README.EN.md)

46
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application/README.md

@ -0,0 +1,46 @@
# LINGYUN.Abp.CachingManagement.Application
缓存管理应用服务模块的实现。
## 功能
* 实现了 `ICacheAppService` 接口,提供缓存管理的基本功能:
* 获取缓存键列表
* 获取缓存值
* 设置缓存值
* 刷新缓存
* 删除缓存
## 权限
* AbpCachingManagement.Cache:缓存管理
* AbpCachingManagement.Cache.Refresh:刷新缓存
* AbpCachingManagement.Cache.Delete:删除缓存
* AbpCachingManagement.Cache.ManageValue:管理缓存值
## 安装
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## 配置使用
1. 首先需要安装相应的缓存实现模块,例如:[LINGYUN.Abp.CachingManagement.StackExchangeRedis](../LINGYUN.Abp.CachingManagement.StackExchangeRedis/README.md)
2. 在模块的 `ConfigureServices` 方法中添加以下代码:
```csharp
Configure<AbpAutoMapperOptions>(options =>
{
options.AddProfile<AbpCachingManagementApplicationAutoMapperProfile>(validate: true);
});
```
## 更多
有关更多信息,请参阅以下资源:
* [应用服务契约](../LINGYUN.Abp.CachingManagement.Application.Contracts/README.md)
* [HTTP API](../LINGYUN.Abp.CachingManagement.HttpApi/README.md)
* [领域层](../LINGYUN.Abp.CachingManagement.Domain/README.md)

44
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Domain/README.EN.md

@ -0,0 +1,44 @@
# LINGYUN.Abp.CachingManagement.Domain
Domain layer implementation of the cache management module.
## Core Interfaces
### ICacheManager
Cache manager interface, defining core cache management functionality:
* `GetKeysAsync`: Get cache key list
* `GetValueAsync`: Get cache value
* `SetAsync`: Set cache value
* `RefreshAsync`: Refresh cache
* `RemoveAsync`: Remove cache
## Domain Services
### CacheManager
Abstract base class for cache manager, providing basic cache management implementation. Specific cache providers (like Redis) need to inherit this class and implement the corresponding methods.
## Installation
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## Extension Development
To support a new cache provider, you need to:
1. Create a new project, inherit from `CacheManager` class
2. Implement all abstract methods
3. Register as implementation of `ICacheManager` (using `[Dependency(ReplaceServices = true)]`)
## More
For more information, please refer to the following resources:
* [Application Service Implementation](../LINGYUN.Abp.CachingManagement.Application/README.EN.md)
* [Application Service Contracts](../LINGYUN.Abp.CachingManagement.Application.Contracts/README.EN.md)
* [HTTP API](../LINGYUN.Abp.CachingManagement.HttpApi/README.EN.md)
* [Redis Implementation](../LINGYUN.Abp.CachingManagement.StackExchangeRedis/README.EN.md)

44
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Domain/README.md

@ -0,0 +1,44 @@
# LINGYUN.Abp.CachingManagement.Domain
缓存管理模块的领域层实现。
## 核心接口
### ICacheManager
缓存管理器接口,定义了缓存管理的核心功能:
* `GetKeysAsync`: 获取缓存键列表
* `GetValueAsync`: 获取缓存值
* `SetAsync`: 设置缓存值
* `RefreshAsync`: 刷新缓存
* `RemoveAsync`: 删除缓存
## 领域服务
### CacheManager
缓存管理器的抽象基类,提供了基础的缓存管理实现。具体的缓存提供程序(如Redis)需要继承此类并实现相应的方法。
## 安装
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## 扩展开发
如果需要支持新的缓存提供程序,需要:
1. 创建新的项目,继承 `CacheManager`
2. 实现所有抽象方法
3. 注册为 `ICacheManager` 的实现(使用 `[Dependency(ReplaceServices = true)]`
## 更多
有关更多信息,请参阅以下资源:
* [应用服务实现](../LINGYUN.Abp.CachingManagement.Application/README.md)
* [应用服务契约](../LINGYUN.Abp.CachingManagement.Application.Contracts/README.md)
* [HTTP API](../LINGYUN.Abp.CachingManagement.HttpApi/README.md)
* [Redis实现](../LINGYUN.Abp.CachingManagement.StackExchangeRedis/README.md)

53
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.HttpApi/README.EN.md

@ -0,0 +1,53 @@
# LINGYUN.Abp.CachingManagement.HttpApi
HTTP API implementation for the cache management module.
## API Endpoints
### /api/caching-management/cache
* GET `/api/caching-management/cache/keys`: Get cache key list
* Parameters:
* prefix (string, optional): Key prefix
* filter (string, optional): Filter condition
* marker (string, optional): Pagination marker
* Permission: AbpCachingManagement.Cache
* GET `/api/caching-management/cache/{key}`: Get cache value for specified key
* Parameters:
* key (string, required): Cache key
* Permission: AbpCachingManagement.Cache
* POST `/api/caching-management/cache`: Set cache value
* Parameters:
* key (string, required): Cache key
* value (string, required): Cache value
* absoluteExpiration (DateTime, optional): Absolute expiration time
* slidingExpiration (DateTime, optional): Sliding expiration time
* Permission: AbpCachingManagement.Cache.ManageValue
* PUT `/api/caching-management/cache/refresh`: Refresh cache
* Parameters:
* key (string, required): Cache key
* absoluteExpiration (DateTime, optional): Absolute expiration time
* slidingExpiration (DateTime, optional): Sliding expiration time
* Permission: AbpCachingManagement.Cache.Refresh
* DELETE `/api/caching-management/cache`: Delete cache
* Parameters:
* key (string, required): Cache key
* Permission: AbpCachingManagement.Cache.Delete
## Installation
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## More
For more information, please refer to the following resources:
* [Application Service Implementation](../LINGYUN.Abp.CachingManagement.Application/README.EN.md)
* [Application Service Contracts](../LINGYUN.Abp.CachingManagement.Application.Contracts/README.EN.md)
* [Domain Layer](../LINGYUN.Abp.CachingManagement.Domain/README.EN.md)

53
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.HttpApi/README.md

@ -0,0 +1,53 @@
# LINGYUN.Abp.CachingManagement.HttpApi
缓存管理模块的 HTTP API 实现。
## API 接口
### /api/caching-management/cache
* GET `/api/caching-management/cache/keys`: 获取缓存键列表
* 参数:
* prefix (string, optional): 键前缀
* filter (string, optional): 过滤条件
* marker (string, optional): 分页标记
* 权限:AbpCachingManagement.Cache
* GET `/api/caching-management/cache/{key}`: 获取指定键的缓存值
* 参数:
* key (string, required): 缓存键
* 权限:AbpCachingManagement.Cache
* POST `/api/caching-management/cache`: 设置缓存值
* 参数:
* key (string, required): 缓存键
* value (string, required): 缓存值
* absoluteExpiration (DateTime, optional): 绝对过期时间
* slidingExpiration (DateTime, optional): 滑动过期时间
* 权限:AbpCachingManagement.Cache.ManageValue
* PUT `/api/caching-management/cache/refresh`: 刷新缓存
* 参数:
* key (string, required): 缓存键
* absoluteExpiration (DateTime, optional): 绝对过期时间
* slidingExpiration (DateTime, optional): 滑动过期时间
* 权限:AbpCachingManagement.Cache.Refresh
* DELETE `/api/caching-management/cache`: 删除缓存
* 参数:
* key (string, required): 缓存键
* 权限:AbpCachingManagement.Cache.Delete
## 安装
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## 更多
有关更多信息,请参阅以下资源:
* [应用服务实现](../LINGYUN.Abp.CachingManagement.Application/README.md)
* [应用服务契约](../LINGYUN.Abp.CachingManagement.Application.Contracts/README.md)
* [领域层](../LINGYUN.Abp.CachingManagement.Domain/README.md)

61
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.StackExchangeRedis/README.EN.md

@ -0,0 +1,61 @@
# LINGYUN.Abp.CachingManagement.StackExchangeRedis
Cache management implementation module based on StackExchange.Redis.
## Features
* Implements the `ICacheManager` interface, providing Redis-based cache management features:
* Get cache key list (supports prefix matching and filtering)
* Get cache value
* Set cache value (supports absolute and sliding expiration)
* Refresh cache
* Delete cache
## Installation
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## Configuration and Usage
1. First, configure the Redis connection string in `appsettings.json`:
```json
{
"Redis": {
"Configuration": "127.0.0.1:6379"
}
}
```
2. Add the following code in the `ConfigureServices` method of your module:
```csharp
Configure<RedisCacheOptions>(options =>
{
// Optional: Configure Redis instance name prefix
options.InstanceName = "MyApp:";
});
Configure<AbpDistributedCacheOptions>(options =>
{
// Optional: Configure cache key prefix
options.KeyPrefix = "MyApp:";
});
```
## Multi-tenancy Support
The module has built-in multi-tenancy support, automatically isolating cache data based on the current tenant ID:
* Key format with tenant: `{InstanceName}t:{TenantId}:{KeyPrefix}:{Key}`
* Key format without tenant: `{InstanceName}c:{KeyPrefix}:{Key}`
## More
For more information, please refer to the following resources:
* [Application Service Implementation](../LINGYUN.Abp.CachingManagement.Application/README.EN.md)
* [Application Service Contracts](../LINGYUN.Abp.CachingManagement.Application.Contracts/README.EN.md)
* [HTTP API](../LINGYUN.Abp.CachingManagement.HttpApi/README.EN.md)
* [Domain Layer](../LINGYUN.Abp.CachingManagement.Domain/README.EN.md)

61
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.StackExchangeRedis/README.md

@ -0,0 +1,61 @@
# LINGYUN.Abp.CachingManagement.StackExchangeRedis
基于 StackExchange.Redis 的缓存管理实现模块。
## 功能
* 实现了 `ICacheManager` 接口,提供基于 Redis 的缓存管理功能:
* 获取缓存键列表(支持前缀匹配和过滤)
* 获取缓存值
* 设置缓存值(支持绝对过期时间和滑动过期时间)
* 刷新缓存
* 删除缓存
## 安装
```bash
abp add-module LINGYUN.Abp.CachingManagement
```
## 配置使用
1. 首先需要配置 Redis 连接字符串,在 `appsettings.json` 中添加:
```json
{
"Redis": {
"Configuration": "127.0.0.1:6379"
}
}
```
2. 在模块的 `ConfigureServices` 方法中添加以下代码:
```csharp
Configure<RedisCacheOptions>(options =>
{
// 可选:配置 Redis 实例名称前缀
options.InstanceName = "MyApp:";
});
Configure<AbpDistributedCacheOptions>(options =>
{
// 可选:配置缓存键前缀
options.KeyPrefix = "MyApp:";
});
```
## 多租户支持
模块内置了多租户支持,会自动根据当前租户ID来隔离缓存数据:
* 有租户时的键格式:`{InstanceName}t:{TenantId}:{KeyPrefix}:{Key}`
* 无租户时的键格式:`{InstanceName}c:{KeyPrefix}:{Key}`
## 更多
有关更多信息,请参阅以下资源:
* [应用服务实现](../LINGYUN.Abp.CachingManagement.Application/README.md)
* [应用服务契约](../LINGYUN.Abp.CachingManagement.Application.Contracts/README.md)
* [HTTP API](../LINGYUN.Abp.CachingManagement.HttpApi/README.md)
* [领域层](../LINGYUN.Abp.CachingManagement.Domain/README.md)
Loading…
Cancel
Save