协议定义与实现, 协议支持 批处理、特殊字符如\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层,先解析,再执行,最后构建返回体。 一个是半包问题,没有处理。 另一个是感觉协议结构有点麻烦,
This commit is contained in:
10
Makefile
10
Makefile
@@ -1,16 +1,19 @@
|
||||
|
||||
CC = gcc
|
||||
FLAGS = -I ./NtyCo/core/ -L ./NtyCo/ -lntyco -lpthread -luring -ldl
|
||||
SRCS = kvstore.c ntyco.c proactor.c kvs_array.c kvs_rbtree.c kvs_hash.c
|
||||
SRCS = kvstore.c ntyco.c proactor.c reactor.c kvs_array.c kvs_rbtree.c kvs_hash.c kvs_rw_tools.c
|
||||
TESTCASE_SRCS = testcase.c
|
||||
TARGET = kvstore
|
||||
SUBDIR = ./NtyCo/
|
||||
TESTCASE = testcase
|
||||
TESTCASE2 = testcase2
|
||||
TESTCASE2_SRCS = testcase.c
|
||||
|
||||
|
||||
OBJS = $(SRCS:.c=.o)
|
||||
|
||||
|
||||
all: $(SUBDIR) $(TARGET) $(TESTCASE)
|
||||
all: $(SUBDIR) $(TARGET) $(TESTCASE) $(TESTCASE2)
|
||||
|
||||
$(SUBDIR): ECHO
|
||||
make -C $@
|
||||
@@ -24,6 +27,9 @@ $(TARGET): $(OBJS)
|
||||
$(TESTCASE): $(TESTCASE_SRCS)
|
||||
$(CC) -o $@ $^
|
||||
|
||||
$(TESTCASE2): $(TESTCASE2_SRCS)
|
||||
$(CC) -o $@ $^
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(FLAGS) -c $^ -o $@
|
||||
|
||||
|
||||
Reference in New Issue
Block a user