Closed Renegade-NIC closed 3 months ago
是的,将消息丢弃。
丢了,客户端如何知道呢?在请求时转发失败,客户端可重试,但是在逻辑服处理完逻辑响应结果给网关时转发失败了,客户端怎么办呢?
这种偏业务的处理方法很多,比如
一般建议使用方法一,因为如果在服务器做这种记录,请求数据将会占用更多的内存;因为游戏对外服只做与玩家的连接,可能会有数万或数十万的玩家连接在同一台对外服上;所以在客户端做这些操作是比较合适的,占用玩家的机器资源,从而减少服务器成本。
存在重试,意味着逻辑服业务侧需要做幂等处理,刚开始我以为框架都帮忙搞好了呢。 后期考虑以组件试的加这个吗?
可以,欢迎 PR 。
你的问题 | 使用场景
源码网关转发消息,基本都是oneway方法,sofabolt官网说该方法不保证成功,我看如果失败,就捕捉异常了,那么这次请求没有重试,是不是消息就丢了呢?
版本