Commit Graph

20 Commits

Author SHA1 Message Date
kercylan98 4e1d075a05 feat: server 支持通过 WithLowMessageDuration、WithAsyncLowMessageDuration 函数设置慢消息阈值 2024-01-12 18:43:47 +08:00
kercylan98 3408c212d0 refactor: 重构 server 包分流渠道设计,修复部分问题
- 使用 RingBuffer 实现分流渠道的无界缓冲区,修复分流渠道被关闭后,未处理完成的消息将会被丢弃的问题;
- 移除 server.WithDisableAutomaticReleaseShunt 可选项,分流渠道将在消息处理完毕且没有连接使用时自行释放;
2024-01-08 19:11:17 +08:00
kercylan98 5e5fe8acca perf: 优化 server.Server 连接管理机制,优化 GetOnlineCount、GetOnlineBotCount 性能 2023-12-29 10:34:18 +08:00
kercylan98 e960d07f49 feat: server 包新增 WithWebsocketUpgrade 函数,支持自定义 websocket.Upgrader 2023-12-25 14:40:02 +08:00
kercylan98 d9ef3474a7 feat: server 包新增 WithDisableAutomaticReleaseShunt 可选项,可禁止分流渠道自动释放。增加 ReleaseShunt、HasShunt、GetShuntNum 等函数。优化系统分流渠道将不再能够被释放 2023-12-25 11:01:41 +08:00
kercylan98 d27fa7c246 perf: 更改 server 和 conn 的消息实现为 channel 2023-12-23 19:05:39 +08:00
kercylan98 eb28d42bf1 refactor: server.Server 兼容新的 concurrent.Pool 和 buffer.Unbounded 2023-12-23 18:15:34 +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 173dd11d4d feat: server.Server 默认开启数据包大小警告,可通过 server.WithPacketWarnSize 关闭或调整警告大小,默认为 1MB 2023-11-28 09:32:53 +08:00
kercylan98 70f7a79c88 refactor: server 包重构及性能优化
1、由于设计不合理,移除 server
包中跨服相关的内容;
2、重构消息处理机制和消息分流机制并优化性能;
3、分流消息支持数据包、定时任务、异步回调的分流;
4、长连接支持获取定时器。
2023-11-10 18:40:55 +08:00
kercylan98 31c0e1b735 refactor: server 移除 WithConnMessageChannelSize 可选项 2023-09-19 16:48:50 +08:00
kercylan98 810a9fdb73 refactor: server 包重构消息通道,采用无界缓冲区替代原本的 chan,解决消息通道的缓冲区达到上限时造成永久阻塞的问题,移除 WithMessageChannelSize 可选项,修改 WithShunt 可选项不再需要 channelGenerator 参数 2023-09-18 15:52:03 +08:00
kercylan98 064d434a0c feat: server 包新增 WithLimitLift 和 WithConnectionMessageChannelSize 函数,用于限制服务器最大生命周期及连接的消息写入通道大小 2023-09-09 16:21:06 +08:00
kercylan98 add1e4bc8c fix: 修复宕机问题 2023-09-04 17:21:52 +08:00
kercylan98 4850dd4aa3 refactor: 调整 server 数据包相关处理函数的接收参数不再为 server.Packet,同时移除 server.Packet 2023-08-23 19:29:55 +08:00
kercylan98 3e9d56ec5b perf: 调整 server.DefaultMessageChannelSize 为 65535,优化默认内存占用 2023-07-13 14:38:39 +08:00
kercylan98 98234e5f86 refactor: log 包重构,优化使用方式 2023-07-12 18:34:45 +08:00
kercylan98 47b8a333eb perf: 优化代码结构,去除无用代码,去除重复代码 2023-07-11 19:35:08 +08:00
kercylan98 74c8f215d7 style: 优化 server 包代码可读性 2023-07-11 10:10:36 +08:00