【集成示例】PicoServer 与Redis集成:轻量服务快速操作缓存数据
核心目标:快速集成Redis,实现缓存数据的增删查操作,提升轻量服务数据读写效率。
核心准备
- 环境:安装并启动Redis(Windows下载Redis-x64包,Linux执行
apt install redis-server); - 安装NuGet包:
Install-Package PicoServer Install-Package StackExchange.Redis
C# 极简代码示例
using PicoServer;
using StackExchange.Redis;
using System;
class Program
{
static void Main(string[] args)
{
// 1. 初始化Redis连接(本地默认配置)
var redisConn = ConnectionMultiplexer.Connect("localhost:6379");
Console.WriteLine("Redis连接成功");
// 2. 启动PicoServer
var MyAPI = new WebAPIServer();
MyAPI.StartServer();
Console.WriteLine("PicoServer启动成功,地址:http://localhost:8090");
// 3. 注册路由(操作Redis)
// 写入缓存
MyAPI.AddRoute("/set", () =>
{
var db = redisConn.GetDatabase();
db.StringSet("demo:name", "PicoServer-Redis", TimeSpan.FromMinutes(10));
return """{"code":1,"msg":"缓存写入成功"}""";
}, "GET");
// 读取缓存
MyAPI.AddRoute("/get", () =>
{
var db = redisConn.GetDatabase();
string value = db.StringGet("demo:name");
return string.IsNullOrEmpty(value)
? """{"code":0,"msg":"缓存不存在"}"""
: $"""{"code":1,"msg":"读取成功","data":"{value}"}""";
}, "GET");
Console.ReadKey();
// 4. 释放资源
MyAPI.StopServer();
redisConn.Dispose();
}
}
VB.NET 极简代码示例
Imports PicoServer
Imports StackExchange.Redis
Imports System
Module Program
Sub Main(args As String())
' 1. 初始化Redis连接(本地默认配置)
Dim redisConn = ConnectionMultiplexer.Connect("localhost:6379")
Console.WriteLine("Redis连接成功")
' 2. 启动PicoServer
Dim MyAPI = New WebAPIServer()
MyAPI.StartServer()
Console.WriteLine("PicoServer启动成功,地址:http://localhost:8090")
' 3. 注册路由(操作Redis)
' 写入缓存
MyAPI.AddRoute("/set", Function()
Dim db = redisConn.GetDatabase()
db.StringSet("demo:name", "PicoServer-Redis", TimeSpan.FromMinutes(10))
Return "{""code"":1,""msg"":""缓存写入成功""}"
End Function, "GET")
' 读取缓存
MyAPI.AddRoute("/get", Function()
Dim db = redisConn.GetDatabase()
Dim value As String = db.StringGet("demo:name")
Return If(String.IsNullOrEmpty(value),
"{""code"":0,""msg"":""缓存不存在""}",
$"{{""code"":1,""msg"":""读取成功"",""data"":""{value}""}}")
End Function, "GET")
Console.ReadKey()
' 4. 释放资源
MyAPI.StopServer()
redisConn.Dispose()
End Sub
End Module
关键说明
- Redis有密码/非默认端口:连接字符串改为
"localhost:6379,password=你的密码"; - 可扩展支持Hash、List等Redis数据类型(如C#:
db.HashSet("user:1", "name", "张三"),VB.NET:db.HashSet("user:1", "name", "张三"));
发布时间: