xingo代码结构

.
├── cluster                                 集群相关
│   ├── asyncresult.go                 rpc异步调用等待结果放回
│   ├── child.go                           集群子节点管理器
│   ├── clusterconf.go                  集群配置文件解析

│   ├── cmdinterpreter.go            telnet在线调试命令解释器

│   ├── router.go                        rpc接口模板

│   ├── rpc.go                             json rpc实现
│   ├── rpchandle.go                    rpc消息处理逻辑
│   ├── rpcpack.go                       rpc消息序列化和反序列化

│   ├── rpcprotocol.go                 rpc消息处理协议
│   └── telnetprotocol.go              在线调试工具telnet协议
├── clusterserver                         集群服务相关
│   ├── clusterglobal.go                集群全局变量
│   ├── clusterserver.go                集群服务
│   └── master.go                         集群管理服务

├── db                                        数据库操作
│   ├── mongo/dboperate.go        数据库操作
│   └── mongo/dboperate_test.go 单元测试
├── fnet                                      底层网络相关
│   ├── connection.go                   网络链接抽象
│   ├── connectionmgr.go              链接管理
│   ├── datapack.go                      序列化和反序列化
│   ├── msghandle.go                   网络数据包处理,消息路由
│   ├── protocol.go                       默认通信协议实现

│   ├── router.go                          api接口模板
│   └── tcpclient.go                      一个基于事件驱动的tcp客户端
├── fserver
│   └── server.go                          xingo 服务器抽象
├── iface                                     接口描述目录
│   ├── iclient.go

│   ├── icommand.go

│   ├── icommandinterpreter.go
│   ├── iconnection.go

│   ├── iconnectionmgr.go

│   ├── idatapack.go

│   ├── imsghandle.go
│   ├── iprotocol.go

│   ├── irouter.go
│   ├── iserver.go
│   └── iwriter.go
├── LICENSE
├── logger
│   ├── logger.go                           日志实现
│   └── logger_test.go
├── sys_rpc                                  系统的rpc通信
│   ├── child_rpc.go                       子节点rpc
│   ├── master_rpc.go                    管理节点rpc
│   └── root_rpc.go                        父节点rpc

├── telnetcmd
│   ├── mastercommand.go            master节点支持的telnet命令(集群服务器关闭,集群配置热更新)
│   └── pprofcpucommand.go         telnet在线调试工具之性能分析命令
├── timer

│   ├── hashwheel.go                     xingo hash时间轮定时器实现

│   ├── safetimer.go                      xingo goroutine安全的定时器

│   ├── safetimer_test.go               单元测试
│   └── timer.go                            goroutine版本的定时器实现
└── utils
│   ├── globalobj.go                       xingo全局变量,服务器相关事件回调绑定

│   ├── tools.go                            工具函数

│   ├── uuid_test.go                      单元测试
│   └── uuidfactory.go                   uuid生成器(暂时只用于rpc异步结果对应的key)

├── .gitignore

├── LICENSE

├── README.md

├── version.go

├── xingo.go

发表评论

电子邮件地址不会被公开。 必填项已用*标注