tikvgrpcserver

25 篇文章 0 订阅
21 篇文章 0 订阅

 

.proto文件内容如下

syntax = "proto3";
option go_package = "tikv-rpc/proto";
package  tikvrpc;


service TikvTxnService {
    rpc Begin(NullMsg) returns(TxnIdResult) {}
    rpc Commit(TxnIdResult) returns(ResponseResult) {}
    rpc Rollback(TxnIdResult) returns(ResponseResult) {}
    rpc Exist(GetRequest) returns(BoolResult) {}
    rpc Get(GetRequest) returns(KVResult) {}
    rpc BatchGet(BatchGetRequest) returns(BatchResult) {}
    rpc Put(PutRequest) returns(ResponseResult) {}
    rpc BatchPut(BatchPutRequest) returns(ResponseResult) {}
    rpc Scan(ScanRequest) returns(BatchResult) {}
    rpc Delete(DeleteRequest) returns(ResponseResult) {}
    rpc BatchDelete(BatchDeleteRequest) returns(ResponseResult) {}
}
message NullMsg {

}
message BoolResult {
    bool exist = 1;
}
message TxnIdResult {
    uint64 TxnId = 1;
}
message ResponseResult {
    int32 status = 1;
    string error = 2;
}

message GetRequest {
    uint64 startTS = 1;
    bytes key = 2;
}

message BatchGetRequest {
    uint64 startTS = 1;
    repeated bytes keys = 2;
}
message KVResult {
    bytes key = 1;
    bytes value = 2;
}
message PutRequest {
    uint64 startTS = 1;
    KVResult kv = 2;
}

message BatchPutRequest {
    uint64 startTS = 1;
    repeated KVResult kvs = 2;
}
message ScanRequest {
    uint64 startTS = 1;
    bytes startKey = 2;
    bytes endKey = 3;
    uint32 limit = 4;
    bool keyOnly = 5;
}
message BatchResult {
    repeated KVResult kvs = 1;
}

message DeleteRequest {
    bytes key = 1;
}
message BatchDeleteRequest {
    repeated bytes keys = 1;
}

cd /proto

protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative tikv_txn.proto

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值