Files
kratos-bootstrap/api/conf/v1/kratos_conf_server.proto
2023-11-17 22:48:39 +08:00

204 lines
5.4 KiB
Protocol Buffer
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

syntax = "proto3";
package conf;
option go_package = "github.com/tx7do/kratos-bootstrap/gen/api/go/conf/v1;conf";
import "google/protobuf/duration.proto";
import "conf/v1/kratos_conf_middleware.proto";
// 服务器
message Server {
// REST
message REST {
message CORS {
repeated string headers = 1; //
repeated string methods = 2; //
repeated string origins = 3; //
}
string network = 1; // 网络
string addr = 2; // 服务监听地址
google.protobuf.Duration timeout = 3; // 超时时间
CORS cors = 4; // 服务监听地址
Middleware middleware = 5; // 中间件
bool enable_swagger = 6; // 启用SwaggerUI
bool enable_pprof = 7; // 启用pprof
}
// gPRC
message GRPC {
string network = 1; // 网络
string addr = 2; // 服务监听地址
google.protobuf.Duration timeout = 3; // 超时时间
Middleware middleware = 4;
}
// Websocket
message Websocket {
string network = 1; // 网络样式http、https
string addr = 2; // 服务监听地址
string path = 3; // 路径
string codec = 4; // 编解码器: json,xml,yaml...
google.protobuf.Duration timeout = 5; // 超时时间
}
// MQTT
message Mqtt {
string addr = 1; // 对端网络地址
}
// Kafka
message Kafka {
repeated string addrs = 1; // 对端网络地址
}
// RabbitMQ
message RabbitMQ {
repeated string addrs = 1; // 对端网络地址
}
message ActiveMQ {
string endpoint = 1; // 对端网络地址
string codec = 2; // 编解码器: json,xml,yaml...
}
message NATS {
string endpoint = 1; // 对端网络地址
string codec = 2; // 编解码器: json,xml,yaml...
}
message NSQ {
string endpoint = 1; // 对端网络地址
string codec = 2; // 编解码器: json,xml,yaml...
}
message Pulsar {
string endpoint = 1; // 对端网络地址
string codec = 2; // 编解码器: json,xml,yaml...
}
message Redis {
string endpoint = 1; // 对端网络地址
string codec = 2; // 编解码器: json,xml,yaml...
}
message RocketMQ {
string version = 1; // 驱动版本aliyun、v2、v5
string codec = 2; // 编解码器: json,xml,yaml...
bool enable_trace = 3;
repeated string name_servers = 4;
string name_server_domain = 5;
string access_key = 6;
string secret_key = 7;
string security_token = 8;
string namespace = 9;
string instance_name = 10;
string group_name = 11;
}
// Asynq
message Asynq {
string endpoint = 1; // 对端网络地址
string password = 2; // redis登录密码
int32 db = 3; // 数据库索引
string location = 4; // 时区
}
// Machinery
message Machinery {
repeated string brokers = 1; // broker的地址可以根据实际使用的存储介质分别指定Redis、AMQP或AWS SQS
repeated string backends = 2; // backend配置用来指定存放结果的介质的配置。可以根据需求分别指定为Redis、memcached或mongodb等
}
// SSE
message SSE {
string network = 1; // 网络
string addr = 2; // 服务监听地址
string path = 3; // 路径
string codec = 4; // 编解码器
google.protobuf.Duration timeout = 5; // 超时时间
google.protobuf.Duration event_ttl = 6; // 超时时间
bool auto_stream = 7; //
bool auto_reply = 8; //
bool split_data = 9; //
bool encode_base64 = 10; // 进行BASE64编码
}
// SocketIO
message SocketIO {
string network = 1; // 网络
string addr = 2; // 服务监听地址
string path = 3; // 路径
string codec = 4; // 编解码器
}
// SignalR
message SignalR {
string network = 1; // 网络
string addr = 2; // 服务监听地址
string codec = 3; // 编解码器
google.protobuf.Duration keep_alive_interval = 4; // 超时时间
google.protobuf.Duration chan_receive_timeout = 5; // 超时时间
bool debug = 6; // 调试开关
uint32 stream_buffer_capacity = 7; //
}
// GraphQL
message GraphQL {
string network = 1; // 网络
string addr = 2; // 服务监听地址
string path = 3; // 路径
string codec = 4; // 编解码器
google.protobuf.Duration timeout = 5; // 超时时间
bool strict_slash = 6;
}
// Thrift
message Thrift {
string network = 1; // 网络
string addr = 2; // 服务监听地址
string protocol = 3;
bool buffered = 4;
bool framed = 5;
bool buffer_size = 6;
}
// RPC
REST rest = 1; // REST服务
GRPC grpc = 2; // gRPC服务
GraphQL graphql = 3; // GraphQL服务
Thrift thrift = 4; // Thrift服务
// Message Queue
Mqtt mqtt = 10; // MQTT服务
Kafka kafka = 11; // Kafka服务
RabbitMQ rabbitmq = 12; // RabbitMQ服务
ActiveMQ activemq = 13; // ActiveMQ
NATS nats = 14; // NATS
NSQ nsq = 15; // NATS
Pulsar pulsar = 16; // Pulsar
Redis redis = 17; // Redis
RocketMQ rocketmq = 18; // RocketMQ
// RealTime
Websocket websocket = 20; // Websocket服务
SSE sse = 21; // SSE服务
SocketIO socketio = 22; // SocketIO服务
SignalR signalr = 23; // SignalR服务
// Task Queue
Asynq asynq = 30; // Asynq服务
Machinery machinery = 31; // Machinery服务
}