mirror of
https://github.com/FlourishingWorld/hk4e.git
synced 2026-02-04 12:52:31 +08:00
完善docker配置文件
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -25,6 +25,8 @@ bin
|
||||
protocol/proto
|
||||
gate/client_proto/proto
|
||||
gate/client_proto/client_proto_gen.go
|
||||
gs/api/*.pb.go
|
||||
node/api/*.pb.go
|
||||
|
||||
# Log file
|
||||
*.log
|
||||
|
||||
35
README.md
35
README.md
@@ -7,12 +7,39 @@
|
||||
* Go >= 1.18
|
||||
* Protoc >= 3.21
|
||||
* Protoc Gen Go >= 1.28
|
||||
* Docker >= 20.10
|
||||
* Docker Compose >= 1.29
|
||||
|
||||
> 1. 首次需要安装工具 `make dev_tool`
|
||||
> 2. 生成协议 `make gen_natsrpc && make gen_proto`
|
||||
> 3. 生成配置表 `make gen_csv`
|
||||
## 快速启动
|
||||
|
||||
## 快速运行
|
||||
* 首次需要安装工具
|
||||
|
||||
```shell
|
||||
make dev_tool
|
||||
```
|
||||
|
||||
* 生成协议
|
||||
|
||||
```shell
|
||||
make gen_natsrpc # 生成natsrpc协议
|
||||
make gen_proto # 生成客户端协议
|
||||
make gen_client_proto # 生成客户端协议代理(非必要)
|
||||
```
|
||||
|
||||
* 构建
|
||||
|
||||
```shell
|
||||
make build # 构建服务器二进制文件
|
||||
make docker_build # 构建镜像
|
||||
```
|
||||
|
||||
* 启动
|
||||
|
||||
```shell
|
||||
make gen_csv # 生成配置表
|
||||
# 启动前请先确保各服务器的配置文件正确
|
||||
docker-compose up -d # 启动服务器
|
||||
```
|
||||
|
||||
#### 第三方组件
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ http_port = 8080
|
||||
|
||||
[logger]
|
||||
level = "DEBUG"
|
||||
mode = "BOTH"
|
||||
mode = "CONSOLE"
|
||||
track = true
|
||||
max_size = 10485760
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ client_proto_proxy_enable = false
|
||||
|
||||
[logger]
|
||||
level = "DEBUG"
|
||||
mode = "BOTH"
|
||||
mode = "CONSOLE"
|
||||
track = true
|
||||
max_size = 10485760
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ gate_tcp_mq_port = 33333
|
||||
|
||||
[logger]
|
||||
level = "DEBUG"
|
||||
mode = "BOTH"
|
||||
mode = "CONSOLE"
|
||||
track = true
|
||||
max_size = 10485760
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ http_port = 9001
|
||||
|
||||
[logger]
|
||||
level = "DEBUG"
|
||||
mode = "BOTH"
|
||||
mode = "CONSOLE"
|
||||
track = true
|
||||
max_size = 10485760
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ gacha_history_server = "https://hk4e.flswld.com/api/v1"
|
||||
|
||||
[logger]
|
||||
level = "DEBUG"
|
||||
mode = "BOTH"
|
||||
mode = "CONSOLE"
|
||||
track = true
|
||||
max_size = 10485760
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[logger]
|
||||
level = "DEBUG"
|
||||
mode = "BOTH"
|
||||
mode = "CONSOLE"
|
||||
track = true
|
||||
max_size = 10485760
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[logger]
|
||||
level = "DEBUG"
|
||||
mode = "BOTH"
|
||||
mode = "CONSOLE"
|
||||
track = true
|
||||
max_size = 10485760
|
||||
|
||||
|
||||
147
docker-compose.yaml
Normal file
147
docker-compose.yaml
Normal file
@@ -0,0 +1,147 @@
|
||||
version: '3'
|
||||
services:
|
||||
node_services:
|
||||
restart: always
|
||||
image: flswld/node:1.0.0
|
||||
container_name: node
|
||||
environment:
|
||||
TZ: Asia/Shanghai
|
||||
GOLANG_PROTOBUF_REGISTRATION_CONFLICT: ignore
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
- /etc/timezone:/etc/timezone
|
||||
- /usr/share/zoneinfo:/usr/share/zoneinfo
|
||||
- ./docker/node/bin/application.toml:/node/application.toml
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '1.00'
|
||||
memory: 128M
|
||||
dispatch_services:
|
||||
restart: always
|
||||
image: flswld/dispatch:1.0.0
|
||||
container_name: dispatch
|
||||
ports:
|
||||
- "8080:8080/tcp"
|
||||
environment:
|
||||
TZ: Asia/Shanghai
|
||||
GOLANG_PROTOBUF_REGISTRATION_CONFLICT: ignore
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
- /etc/timezone:/etc/timezone
|
||||
- /usr/share/zoneinfo:/usr/share/zoneinfo
|
||||
- ./docker/dispatch/bin/application.toml:/dispatch/application.toml
|
||||
- ./docker/dispatch/bin/key:/dispatch/key
|
||||
- ./docker/dispatch/bin/static:/dispatch/static
|
||||
depends_on:
|
||||
- node_services
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '1.00'
|
||||
memory: 128M
|
||||
gate_services:
|
||||
restart: always
|
||||
image: flswld/gate:1.0.0
|
||||
container_name: gate
|
||||
ports:
|
||||
- "22222:22222/udp"
|
||||
- "33333:33333/tcp"
|
||||
environment:
|
||||
TZ: Asia/Shanghai
|
||||
GOLANG_PROTOBUF_REGISTRATION_CONFLICT: ignore
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
- /etc/timezone:/etc/timezone
|
||||
- /usr/share/zoneinfo:/usr/share/zoneinfo
|
||||
- ./docker/gate/bin/application.toml:/gate/application.toml
|
||||
- ./docker/gate/bin/key:/gate/key
|
||||
- ./gate/client_proto/proto/client_cmd.csv:/gate/client_cmd.csv
|
||||
depends_on:
|
||||
- dispatch_services
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '4.00'
|
||||
memory: 1024M
|
||||
fight_services:
|
||||
restart: always
|
||||
image: flswld/fight:1.0.0
|
||||
container_name: fight
|
||||
environment:
|
||||
TZ: Asia/Shanghai
|
||||
GOLANG_PROTOBUF_REGISTRATION_CONFLICT: ignore
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
- /etc/timezone:/etc/timezone
|
||||
- /usr/share/zoneinfo:/usr/share/zoneinfo
|
||||
- ./docker/fight/bin/application.toml:/fight/application.toml
|
||||
- ./gate/client_proto/proto/client_cmd.csv:/fight/client_cmd.csv
|
||||
depends_on:
|
||||
- gate_services
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '1.00'
|
||||
memory: 128M
|
||||
pathfinding_services:
|
||||
restart: always
|
||||
image: flswld/pathfinding:1.0.0
|
||||
container_name: pathfinding
|
||||
environment:
|
||||
TZ: Asia/Shanghai
|
||||
GOLANG_PROTOBUF_REGISTRATION_CONFLICT: ignore
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
- /etc/timezone:/etc/timezone
|
||||
- /usr/share/zoneinfo:/usr/share/zoneinfo
|
||||
- ./docker/pathfinding/bin/application.toml:/pathfinding/application.toml
|
||||
depends_on:
|
||||
- fight_services
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '4.00'
|
||||
memory: 1024M
|
||||
gs_services:
|
||||
restart: always
|
||||
image: flswld/gs:1.0.0
|
||||
container_name: gs
|
||||
environment:
|
||||
TZ: Asia/Shanghai
|
||||
GOLANG_PROTOBUF_REGISTRATION_CONFLICT: ignore
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
- /etc/timezone:/etc/timezone
|
||||
- /usr/share/zoneinfo:/usr/share/zoneinfo
|
||||
- ./docker/gs/bin/application.toml:/gs/application.toml
|
||||
- ./gdconf/game_data_config:/gs/game_data_config
|
||||
- ./gate/client_proto/proto/client_cmd.csv:/gs/client_cmd.csv
|
||||
depends_on:
|
||||
- pathfinding_services
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '4.00'
|
||||
memory: 4096M
|
||||
gm_services:
|
||||
restart: always
|
||||
image: flswld/gm:1.0.0
|
||||
container_name: gm
|
||||
ports:
|
||||
- "9001:9001/tcp"
|
||||
environment:
|
||||
TZ: Asia/Shanghai
|
||||
GOLANG_PROTOBUF_REGISTRATION_CONFLICT: ignore
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
- /etc/timezone:/etc/timezone
|
||||
- /usr/share/zoneinfo:/usr/share/zoneinfo
|
||||
- ./docker/gm/bin/application.toml:/gm/application.toml
|
||||
depends_on:
|
||||
- gs_services
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '1.00'
|
||||
memory: 128M
|
||||
@@ -1,56 +0,0 @@
|
||||
// Code generated by protoc-gen-natsrpc. DO NOT EDIT.
|
||||
// versions:
|
||||
// - protoc-gen-natsrpc v0.5.0
|
||||
// source: api.proto
|
||||
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
fmt "fmt"
|
||||
natsrpc "github.com/byebyebruce/natsrpc"
|
||||
nats_go "github.com/nats-io/nats.go"
|
||||
proto "google.golang.org/protobuf/proto"
|
||||
)
|
||||
|
||||
var _ = new(context.Context)
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = natsrpc.Version
|
||||
var _ = nats_go.Version
|
||||
|
||||
// GM 服务
|
||||
type GMNATSRPCServer interface {
|
||||
Cmd(ctx context.Context, req *CmdRequest) (*CmdReply, error)
|
||||
}
|
||||
|
||||
// RegisterGMNATSRPCServer register GM service
|
||||
func RegisterGMNATSRPCServer(server *natsrpc.Server, s GMNATSRPCServer, opts ...natsrpc.ServiceOption) (natsrpc.IService, error) {
|
||||
return server.Register("hk4e.gs.api.GM", s, opts...)
|
||||
}
|
||||
|
||||
// GM 服务
|
||||
type GMNATSRPCClient interface {
|
||||
Cmd(ctx context.Context, req *CmdRequest, opt ...natsrpc.CallOption) (*CmdReply, error)
|
||||
}
|
||||
|
||||
type _GMNATSRPCClient struct {
|
||||
c *natsrpc.Client
|
||||
}
|
||||
|
||||
// NewGMNATSRPCClient
|
||||
func NewGMNATSRPCClient(enc *nats_go.EncodedConn, opts ...natsrpc.ClientOption) (GMNATSRPCClient, error) {
|
||||
c, err := natsrpc.NewClient(enc, "hk4e.gs.api.GM", opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
ret := &_GMNATSRPCClient{
|
||||
c: c,
|
||||
}
|
||||
return ret, nil
|
||||
}
|
||||
func (c *_GMNATSRPCClient) Cmd(ctx context.Context, req *CmdRequest, opt ...natsrpc.CallOption) (*CmdReply, error) {
|
||||
rep := &CmdReply{}
|
||||
err := c.c.Request(ctx, "Cmd", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
228
gs/api/api.pb.go
228
gs/api/api.pb.go
@@ -1,228 +0,0 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// versions:
|
||||
// protoc-gen-go v1.26.0
|
||||
// protoc v3.7.0
|
||||
// source: api.proto
|
||||
|
||||
package api
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
reflect "reflect"
|
||||
sync "sync"
|
||||
)
|
||||
|
||||
const (
|
||||
// Verify that this generated code is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||||
)
|
||||
|
||||
type CmdRequest struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
FuncName string `protobuf:"bytes,1,opt,name=func_name,json=funcName,proto3" json:"func_name,omitempty"`
|
||||
Param []string `protobuf:"bytes,2,rep,name=param,proto3" json:"param,omitempty"`
|
||||
}
|
||||
|
||||
func (x *CmdRequest) Reset() {
|
||||
*x = CmdRequest{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_api_proto_msgTypes[0]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *CmdRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*CmdRequest) ProtoMessage() {}
|
||||
|
||||
func (x *CmdRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_api_proto_msgTypes[0]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use CmdRequest.ProtoReflect.Descriptor instead.
|
||||
func (*CmdRequest) Descriptor() ([]byte, []int) {
|
||||
return file_api_proto_rawDescGZIP(), []int{0}
|
||||
}
|
||||
|
||||
func (x *CmdRequest) GetFuncName() string {
|
||||
if x != nil {
|
||||
return x.FuncName
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *CmdRequest) GetParam() []string {
|
||||
if x != nil {
|
||||
return x.Param
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type CmdReply struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` // 0 表示成功
|
||||
Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
|
||||
}
|
||||
|
||||
func (x *CmdReply) Reset() {
|
||||
*x = CmdReply{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_api_proto_msgTypes[1]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *CmdReply) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*CmdReply) ProtoMessage() {}
|
||||
|
||||
func (x *CmdReply) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_api_proto_msgTypes[1]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use CmdReply.ProtoReflect.Descriptor instead.
|
||||
func (*CmdReply) Descriptor() ([]byte, []int) {
|
||||
return file_api_proto_rawDescGZIP(), []int{1}
|
||||
}
|
||||
|
||||
func (x *CmdReply) GetCode() int32 {
|
||||
if x != nil {
|
||||
return x.Code
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *CmdReply) GetMessage() string {
|
||||
if x != nil {
|
||||
return x.Message
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
var File_api_proto protoreflect.FileDescriptor
|
||||
|
||||
var file_api_proto_rawDesc = []byte{
|
||||
0x0a, 0x09, 0x61, 0x70, 0x69, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x67, 0x73, 0x2e,
|
||||
0x61, 0x70, 0x69, 0x22, 0x3f, 0x0a, 0x0a, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||
0x74, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14,
|
||||
0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70,
|
||||
0x61, 0x72, 0x61, 0x6d, 0x22, 0x38, 0x0a, 0x08, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x79,
|
||||
0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
|
||||
0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
|
||||
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x32, 0x33,
|
||||
0x0a, 0x02, 0x47, 0x4d, 0x12, 0x2d, 0x0a, 0x03, 0x43, 0x6d, 0x64, 0x12, 0x12, 0x2e, 0x67, 0x73,
|
||||
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
|
||||
0x10, 0x2e, 0x67, 0x73, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x70, 0x6c,
|
||||
0x79, 0x22, 0x00, 0x42, 0x11, 0x5a, 0x0f, 0x68, 0x6b, 0x34, 0x65, 0x2f, 0x67, 0x73, 0x2f, 0x61,
|
||||
0x70, 0x69, 0x3b, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
file_api_proto_rawDescOnce sync.Once
|
||||
file_api_proto_rawDescData = file_api_proto_rawDesc
|
||||
)
|
||||
|
||||
func file_api_proto_rawDescGZIP() []byte {
|
||||
file_api_proto_rawDescOnce.Do(func() {
|
||||
file_api_proto_rawDescData = protoimpl.X.CompressGZIP(file_api_proto_rawDescData)
|
||||
})
|
||||
return file_api_proto_rawDescData
|
||||
}
|
||||
|
||||
var file_api_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
|
||||
var file_api_proto_goTypes = []interface{}{
|
||||
(*CmdRequest)(nil), // 0: gs.api.CmdRequest
|
||||
(*CmdReply)(nil), // 1: gs.api.CmdReply
|
||||
}
|
||||
var file_api_proto_depIdxs = []int32{
|
||||
0, // 0: gs.api.GM.Cmd:input_type -> gs.api.CmdRequest
|
||||
1, // 1: gs.api.GM.Cmd:output_type -> gs.api.CmdReply
|
||||
1, // [1:2] is the sub-list for method output_type
|
||||
0, // [0:1] is the sub-list for method input_type
|
||||
0, // [0:0] is the sub-list for extension type_name
|
||||
0, // [0:0] is the sub-list for extension extendee
|
||||
0, // [0:0] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_api_proto_init() }
|
||||
func file_api_proto_init() {
|
||||
if File_api_proto != nil {
|
||||
return
|
||||
}
|
||||
if !protoimpl.UnsafeEnabled {
|
||||
file_api_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*CmdRequest); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_api_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*CmdReply); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
}
|
||||
type x struct{}
|
||||
out := protoimpl.TypeBuilder{
|
||||
File: protoimpl.DescBuilder{
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_api_proto_rawDesc,
|
||||
NumEnums: 0,
|
||||
NumMessages: 2,
|
||||
NumExtensions: 0,
|
||||
NumServices: 1,
|
||||
},
|
||||
GoTypes: file_api_proto_goTypes,
|
||||
DependencyIndexes: file_api_proto_depIdxs,
|
||||
MessageInfos: file_api_proto_msgTypes,
|
||||
}.Build()
|
||||
File_api_proto = out.File
|
||||
file_api_proto_rawDesc = nil
|
||||
file_api_proto_goTypes = nil
|
||||
file_api_proto_depIdxs = nil
|
||||
}
|
||||
@@ -1,121 +0,0 @@
|
||||
// Code generated by protoc-gen-natsrpc. DO NOT EDIT.
|
||||
// versions:
|
||||
// - protoc-gen-natsrpc v0.5.0
|
||||
// source: api.proto
|
||||
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
fmt "fmt"
|
||||
natsrpc "github.com/byebyebruce/natsrpc"
|
||||
nats_go "github.com/nats-io/nats.go"
|
||||
proto "google.golang.org/protobuf/proto"
|
||||
)
|
||||
|
||||
var _ = new(context.Context)
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = natsrpc.Version
|
||||
var _ = nats_go.Version
|
||||
|
||||
// 节点服务器注册发现服务
|
||||
type DiscoveryNATSRPCServer interface {
|
||||
// 服务器启动注册获取appid
|
||||
RegisterServer(ctx context.Context, req *RegisterServerReq) (*RegisterServerRsp, error)
|
||||
// 服务器关闭取消注册
|
||||
CancelServer(ctx context.Context, req *CancelServerReq) (*NullMsg, error)
|
||||
// 服务器在线心跳保持
|
||||
KeepaliveServer(ctx context.Context, req *KeepaliveServerReq) (*NullMsg, error)
|
||||
// 获取负载最小的服务器的appid
|
||||
GetServerAppId(ctx context.Context, req *GetServerAppIdReq) (*GetServerAppIdRsp, error)
|
||||
// 获取区服密钥信息
|
||||
GetRegionEc2B(ctx context.Context, req *NullMsg) (*RegionEc2B, error)
|
||||
// 获取负载最小的网关服务器的地址和端口
|
||||
GetGateServerAddr(ctx context.Context, req *GetGateServerAddrReq) (*GateServerAddr, error)
|
||||
// 获取全部网关服务器信息列表
|
||||
GetAllGateServerInfoList(ctx context.Context, req *NullMsg) (*GateServerInfoList, error)
|
||||
// 获取主游戏服务器的appid
|
||||
GetMainGameServerAppId(ctx context.Context, req *NullMsg) (*GetMainGameServerAppIdRsp, error)
|
||||
}
|
||||
|
||||
// RegisterDiscoveryNATSRPCServer register Discovery service
|
||||
func RegisterDiscoveryNATSRPCServer(server *natsrpc.Server, s DiscoveryNATSRPCServer, opts ...natsrpc.ServiceOption) (natsrpc.IService, error) {
|
||||
return server.Register("hk4e.node.api.Discovery", s, opts...)
|
||||
}
|
||||
|
||||
// 节点服务器注册发现服务
|
||||
type DiscoveryNATSRPCClient interface {
|
||||
// 服务器启动注册获取appid
|
||||
RegisterServer(ctx context.Context, req *RegisterServerReq, opt ...natsrpc.CallOption) (*RegisterServerRsp, error)
|
||||
// 服务器关闭取消注册
|
||||
CancelServer(ctx context.Context, req *CancelServerReq, opt ...natsrpc.CallOption) (*NullMsg, error)
|
||||
// 服务器在线心跳保持
|
||||
KeepaliveServer(ctx context.Context, req *KeepaliveServerReq, opt ...natsrpc.CallOption) (*NullMsg, error)
|
||||
// 获取负载最小的服务器的appid
|
||||
GetServerAppId(ctx context.Context, req *GetServerAppIdReq, opt ...natsrpc.CallOption) (*GetServerAppIdRsp, error)
|
||||
// 获取区服密钥信息
|
||||
GetRegionEc2B(ctx context.Context, req *NullMsg, opt ...natsrpc.CallOption) (*RegionEc2B, error)
|
||||
// 获取负载最小的网关服务器的地址和端口
|
||||
GetGateServerAddr(ctx context.Context, req *GetGateServerAddrReq, opt ...natsrpc.CallOption) (*GateServerAddr, error)
|
||||
// 获取全部网关服务器信息列表
|
||||
GetAllGateServerInfoList(ctx context.Context, req *NullMsg, opt ...natsrpc.CallOption) (*GateServerInfoList, error)
|
||||
// 获取主游戏服务器的appid
|
||||
GetMainGameServerAppId(ctx context.Context, req *NullMsg, opt ...natsrpc.CallOption) (*GetMainGameServerAppIdRsp, error)
|
||||
}
|
||||
|
||||
type _DiscoveryNATSRPCClient struct {
|
||||
c *natsrpc.Client
|
||||
}
|
||||
|
||||
// NewDiscoveryNATSRPCClient
|
||||
func NewDiscoveryNATSRPCClient(enc *nats_go.EncodedConn, opts ...natsrpc.ClientOption) (DiscoveryNATSRPCClient, error) {
|
||||
c, err := natsrpc.NewClient(enc, "hk4e.node.api.Discovery", opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
ret := &_DiscoveryNATSRPCClient{
|
||||
c: c,
|
||||
}
|
||||
return ret, nil
|
||||
}
|
||||
func (c *_DiscoveryNATSRPCClient) RegisterServer(ctx context.Context, req *RegisterServerReq, opt ...natsrpc.CallOption) (*RegisterServerRsp, error) {
|
||||
rep := &RegisterServerRsp{}
|
||||
err := c.c.Request(ctx, "RegisterServer", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
func (c *_DiscoveryNATSRPCClient) CancelServer(ctx context.Context, req *CancelServerReq, opt ...natsrpc.CallOption) (*NullMsg, error) {
|
||||
rep := &NullMsg{}
|
||||
err := c.c.Request(ctx, "CancelServer", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
func (c *_DiscoveryNATSRPCClient) KeepaliveServer(ctx context.Context, req *KeepaliveServerReq, opt ...natsrpc.CallOption) (*NullMsg, error) {
|
||||
rep := &NullMsg{}
|
||||
err := c.c.Request(ctx, "KeepaliveServer", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
func (c *_DiscoveryNATSRPCClient) GetServerAppId(ctx context.Context, req *GetServerAppIdReq, opt ...natsrpc.CallOption) (*GetServerAppIdRsp, error) {
|
||||
rep := &GetServerAppIdRsp{}
|
||||
err := c.c.Request(ctx, "GetServerAppId", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
func (c *_DiscoveryNATSRPCClient) GetRegionEc2B(ctx context.Context, req *NullMsg, opt ...natsrpc.CallOption) (*RegionEc2B, error) {
|
||||
rep := &RegionEc2B{}
|
||||
err := c.c.Request(ctx, "GetRegionEc2B", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
func (c *_DiscoveryNATSRPCClient) GetGateServerAddr(ctx context.Context, req *GetGateServerAddrReq, opt ...natsrpc.CallOption) (*GateServerAddr, error) {
|
||||
rep := &GateServerAddr{}
|
||||
err := c.c.Request(ctx, "GetGateServerAddr", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
func (c *_DiscoveryNATSRPCClient) GetAllGateServerInfoList(ctx context.Context, req *NullMsg, opt ...natsrpc.CallOption) (*GateServerInfoList, error) {
|
||||
rep := &GateServerInfoList{}
|
||||
err := c.c.Request(ctx, "GetAllGateServerInfoList", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
func (c *_DiscoveryNATSRPCClient) GetMainGameServerAppId(ctx context.Context, req *NullMsg, opt ...natsrpc.CallOption) (*GetMainGameServerAppIdRsp, error) {
|
||||
rep := &GetMainGameServerAppIdRsp{}
|
||||
err := c.c.Request(ctx, "GetMainGameServerAppId", req, rep, opt...)
|
||||
return rep, err
|
||||
}
|
||||
1044
node/api/api.pb.go
1044
node/api/api.pb.go
File diff suppressed because it is too large
Load Diff
@@ -25,7 +25,7 @@ func NewHandle(messageQueue *mq.MessageQueue) (r *Handle) {
|
||||
}
|
||||
|
||||
func (h *Handle) run() {
|
||||
for i := 0; i < 4; i++ {
|
||||
for i := 0; i < 1; i++ {
|
||||
go func() {
|
||||
for {
|
||||
netMsg := <-h.messageQueue.GetNetMsg()
|
||||
|
||||
Reference in New Issue
Block a user