Commit Graph

122 Commits

Author SHA1 Message Date
kercylan98 82ecb98397 other: 优化 server 包部分 error 的处理方式 2023-12-20 09:48:03 +08:00
kercylan98 ba24b09c71 style: 移除 server 慢消息无意义的堆栈信息,优化消息的 String 函数返回的不再是简单的消息类型 2023-12-19 16:00:45 +08:00
kercylan98 b4ade2c003 feat: server 新增 DeadlockDetectEvent,以便于发生疑似死锁时刻能够执行通知等行为 2023-12-09 13:53:16 +08:00
kercylan98 dc557a06d4 refactor: 优化及重构 server 包关于 WebSocket 的消息类型和消息分流部分内容
- 优化 server 包中 WebSocket 服务器默认响应的消息类型与发信方不同步的问题;
- 移除 server.WithShunt
函数,调整为通过 server.Server.UseShunt 来动态分流渠道,例如可以将用户连接的渠道在用户自身渠道或游戏房间渠道来回切换;
2023-12-01 16:35:27 +08:00
kercylan98 d3ad49d11e refactor: 重构日志模块并清理未使用的依赖 2023-11-28 17:37:01 +08:00
kercylan98 c10494d3c2 recessive: 修正数据包默认警告大小 2023-11-28 09:35:20 +08:00
kercylan98 a3b4a9afe2 fix: server 启动日志包含错误的 Error 日志修复 2023-11-16 09:51:02 +08:00
kercylan98 4c092c04d2 feat: server 包新增机器人,可通过 server.NewBot 函数进行创建,机器人将模拟普通连接行为,适用于测试等场景 2023-11-13 16:05:32 +08:00
kercylan98 e2b7887b14 feat: server 新增 Unique 异步消息,可用于避免相同标识的异步消息在未执行完毕前重复执行 2023-11-13 14:16:38 +08:00
kercylan98 d2654cfc95 feat: 增强 server.RegConsoleCommandEvent 函数,支持 url 格式输入命令,并将命令解析为指令和参数 2023-11-11 19:24:58 +08:00
kercylan98 70f7a79c88 refactor: server 包重构及性能优化
1、由于设计不合理,移除 server
包中跨服相关的内容;
2、重构消息处理机制和消息分流机制并优化性能;
3、分流消息支持数据包、定时任务、异步回调的分流;
4、长连接支持获取定时器。
2023-11-10 18:40:55 +08:00
kercylan98 0b77cc9907 feat: server.Server 支持使用 PushAsyncMessage 快捷发布异步消息 2023-11-06 20:27:50 +08:00
kercylan98 b5b126ef07 perf: server 包异步消息不再执行额外 defer 2023-10-21 13:28:54 +08:00
kercylan98 cdbf388498 fix: server 包数据竞态问题优化 2023-10-21 13:15:41 +08:00
kercylan98 9e339065d4 refactor: cross 包服务器 id 更改为 string 类型 2023-10-21 11:14:10 +08:00
kercylan98 42ab52bc66 feat: server.Conn 支持在 WebSocket 模式下通过 GetWebsocketRequest 函数获取到请求 2023-10-16 19:08:25 +08:00
kercylan98 31c0e1b735 refactor: server 移除 WithConnMessageChannelSize 可选项 2023-09-19 16:48:50 +08:00
kercylan98 1bc32e2026 docs: 修复 server 在 WebSocket 模式下超时时间无效的问题 2023-09-19 15:45:12 +08:00
kercylan98 42465a8f42 style: server 包为服务器启动添加 IP 信息,死锁检测的日志内容优化 2023-09-19 12:35:26 +08:00
kercylan98 810a9fdb73 refactor: server 包重构消息通道,采用无界缓冲区替代原本的 chan,解决消息通道的缓冲区达到上限时造成永久阻塞的问题,移除 WithMessageChannelSize 可选项,修改 WithShunt 可选项不再需要 channelGenerator 参数 2023-09-18 15:52:03 +08:00
kercylan98 2712f3b98e fix: 修复 gnet 作为服务器核心关闭时导致的空指针问题 2023-09-13 16:45:31 +08:00
kercylan98 dc3c7d2eea perf: server 包 websocket SetReadDeadline 优化 2023-09-12 18:41:35 +08:00
kercylan98 064d434a0c feat: server 包新增 WithLimitLift 和 WithConnectionMessageChannelSize 函数,用于限制服务器最大生命周期及连接的消息写入通道大小 2023-09-09 16:21:06 +08:00
kercylan98 19df61b97f fix: 修复 server 关闭服务器后,如果等待消息结束过程中,新消息将阻塞的问题 2023-09-08 16:59:16 +08:00
kercylan98 6c882edb09 fix: server 修复消息计数始终为1的问题 2023-09-08 16:47:23 +08:00
kercylan98 483ace2fa9 perf: server 包连接关闭逻辑优化 2023-09-08 15:54:51 +08:00
kercylan98 376ff779e1 refactor: 优化 server 包消息日志,移除 server.Conn.Reuse 函数(不合理) 2023-09-08 15:20:24 +08:00
kercylan98 04c40bf873 feat: server 包 Server 新增 RegMessageReadyEvent 函数 2023-09-05 16:03:58 +08:00
kercylan98 15a491816a fix: 修复 server 包 RegMessageExecBeforeEvent 函数导致内存泄露的问题 2023-09-05 10:57:44 +08:00
kercylan98 0297c4444a feat: server 包新增 Server.RegMessageExecBeforeEvent 函数,支持在消息执行前进行处理,适用于限流等场景 2023-09-05 10:52:09 +08:00
kercylan98 add1e4bc8c fix: 修复宕机问题 2023-09-04 17:21:52 +08:00
kercylan98 8cd9979e2b fix: 修复 server 中 HTTP 服务器关闭时会引发空指针的问题 2023-08-31 13:32:42 +08:00
kercylan98 c9ff4570fe build: 更新依赖版本 2023-08-23 19:46:02 +08:00
kercylan98 4850dd4aa3 refactor: 调整 server 数据包相关处理函数的接收参数不再为 server.Packet,同时移除 server.Packet 2023-08-23 19:29:55 +08:00
kercylan98 5096e6f884 fix: 修复非 gateway 数据包导致数组越界的问题 2023-08-22 14:07:48 +08:00
kercylan98 811e1bd29e other: server 异步消息回调将不再使用 MessageTypeSystem,更改为 MessageTypeAsyncCallback 2023-08-21 18:48:52 +08:00
kercylan98 3c6ce9cfdf feat: server 包支持设置注册事件的优先级 2023-08-21 15:02:48 +08:00
kercylan98 351257033e feat: gateway 数据包支持像普通数据包一样处理,并且支持自定义端点健康评估函数 2023-08-17 18:46:59 +08:00
kercylan98 36a333379e feat: server.Server 的 HTTP 请求支持慢消息检测 2023-08-17 12:54:15 +08:00
kercylan98 b87df072fc feat: server.Server 新增 HttpServer 函数,用于替代 HttpRouter 2023-08-17 12:47:43 +08:00
kercylan98 93c5f3695f fix: server 包优化 Shutdown 逻辑,修复服务器关闭时不会等待消息执行完毕的问题 2023-08-17 10:38:16 +08:00
kercylan98 dcfb3da534 feat: server 新增 NetworkNone 网络类型,该模式下不监听任何网络端口,仅开启消息队列,适用于纯粹的跨服服务器等情况 2023-08-17 09:44:51 +08:00
kercylan98 b3e4bb6166 feat: server.Server 新增 RegConnectionPacketPreprocessEvent 函数用于对数据包进行预处理操作 2023-08-16 18:38:02 +08:00
kercylan98 b9d953338f feat: server.Server 新增分流通道创建和关闭事件 2023-08-01 15:07:33 +08:00
kercylan98 c92f16c170 feat: server.Server 支持通过 WithShunt 函数对服务器消息进行分流 2023-08-01 14:32:23 +08:00
kercylan98 1297ae7a8f fix: 修复 server 异步消息的 callback 的并发问题
将 callback 转为系统消息的方式执行
2023-07-29 16:42:57 +08:00
kercylan98 b63975ea09 feat: server 异步消息支持将 callback 设置为 nil 2023-07-27 15:39:59 +08:00
kercylan98 8dde18a36e feat: server.Server 新增 ConnectionOpenedAfterEvent 2023-07-27 14:11:17 +08:00
kercylan d0d2087fee refactor: 移除分段锁map实现及 hash.Map、hash.ReadonlyMap 接口,移除 asynchronous 包,同步包更名为 concurrent 2023-07-21 23:32:46 +08:00
kercylan98 037c9b7bbd fix: 修复 onStop 无法等待逻辑执行完成的问题 2023-07-19 17:25:12 +08:00