1iaan
|
f031e107b5
|
resp协议实现和使用hiredis进行测试
|
2026-01-20 11:51:38 +00:00 |
|
1iaan
|
bb2c4275cb
|
resp协议定义, xml定义配置文件
|
2026-01-19 10:37:32 +00:00 |
|
|
|
4b4e06b33d
|
rbtree和hash的全量持久化操作。rbtree的二进制安全。
粗略测试。
|
2026-01-08 21:42:20 +08:00 |
|
|
|
de21fe94ec
|
bugfix: reactor网络模型的的半包解析错误问题。
全量持久化时清除增量持久化的记录。
|
2026-01-08 16:20:00 +08:00 |
|
|
|
3cc97b9454
|
实现全量持久化:save操作落盘,启动时读取到内存
增量持久化:执行修改操作时将cmd追加到log中,启动时逐条取出顺序执行
|
2026-01-07 18:43:28 +08:00 |
|
|
|
cb0134a852
|
提供array和hashtable的存储引擎层的二进制安全支持,把入口函数修改为接收参数长度,将strlen、strcmp、strcpy替换。
|
2026-01-06 21:05:48 +08:00 |
|
|
|
144b374aa2
|
简化协议,
/**
* Request
* Cmd: | OP(1) | argc(1) | repeat { arglen(4) | arg } |
*
* Response
* Rsp: | OP(1) | status(1) | datalen(4) | data |
*/
封装客户端进行批处理和单条命令测试。
|
2026-01-06 19:16:12 +08:00 |
|
|
|
0dc86f5aa5
|
协议定义与实现, 协议支持 批处理、特殊字符如\r\n\0。与单条命令测试。
/**
* Header: | magic(4) | payloadLen(4) |
*
* Request
* Payload: | opcount(4) | repeat Cmd |
* Cmd: | OP(1) | argc(4) | repeat Arg |
* Arg: | arglen(4) | arg |
*
* Response
* Payload: | opcount(4) | repeat Rsp |
* Rsp: | OP(1) | status(1) | datalen(4) | data |
*/
kvstore层,先解析,再执行,最后构建返回体。
一个是半包问题,没有处理。
另一个是感觉协议结构有点麻烦,
|
2026-01-05 23:20:37 +08:00 |
|