类 IoGameGlobalConfig
java.lang.Object
com.iohao.game.bolt.broker.core.common.IoGameGlobalConfig
ioGame 全局默认配置
- 作者:
- 渔民小镇
- 日期:
- 2022-11-11
-
嵌套类概要
-
字段概要
修饰符和类型字段说明boolean
true 开启广播相关日志,默认为 falseboolean
true 使用调度器打印集群信息,默认 30 秒打印一次(目前不提供打印频率设置)boolean
true 开启集群相关日志int
broker (游戏网关)默认端口boolean
Broker(游戏网关)转发消息容错配置boolean
true 开启对外服相关日志,默认为 falseint
集群默认监听端口 Gossip listen portboolean
true 开启日志boolean
true 表示开启 traceId 特性boolean
true 开启请求响应相关日志,默认为 falseint
bolt 消息发送超时时间UserProcessor 构建 Executor 的策略 -
构造器概要
-
方法概要
修饰符和类型方法说明void
getExecutor
(UserProcessorExecutorAware userProcessorExecutorAware) boolean
boolean
boolean
void
setEventBusLog
(boolean eventBusLog)
-
字段详细资料
-
brokerPort
public int brokerPortbroker (游戏网关)默认端口 -
timeoutMillis
public int timeoutMillisbolt 消息发送超时时间 -
gossipListenPort
public int gossipListenPort集群默认监听端口 Gossip listen port -
openLog
public boolean openLogtrue 开启日志 -
requestResponseLog
public boolean requestResponseLogtrue 开启请求响应相关日志,默认为 false -
externalLog
public boolean externalLogtrue 开启对外服相关日志,默认为 false -
broadcastLog
public boolean broadcastLogtrue 开启广播相关日志,默认为 false -
brokerSniperToggleAK47
public boolean brokerSniperToggleAK47Broker(游戏网关)转发消息容错配置游戏逻辑服与游戏对外服通信时,如果没有明确指定要通信游戏对外服,游戏网关则会将消息转发到所有的游戏对外服上。 如果指定了游戏对外服的,游戏网关则会将消息转发到该游戏对外服上,而不会将消息转发到所有的对外服上。 当为 true 时,开启容错机制 表示开发者在发送消息时,如果指定了游戏对外服的, 但【游戏网关】中没有找到所指定的【游戏对外服】,则会将消息转发到所有的游戏对外服上, 这么做的目的是,即使开发者填错了指定的游戏对外服,也能保证消息可以送达到游戏对外服。 当为 false 时,关闭容错机制 表示在【游戏网关】中找不到指定的【游戏对外服】时,则不管了。 支持的通讯方式场景 广播、推送 获取游戏对外服的数据与扩展
另一种叙述版本作用: 在游戏逻辑服发送广播时,支持指定游戏对外服来广播; 如果你能事先知道所要广播的游戏对外服,那么在广播时通过指定游戏对外服,可以避免一些无效的转发。 为了更好的理解的这个配置的作用,这里将作一些比喻: 1. 将广播时指定的游戏对外服,看作是目标 2. 将发送广播的游戏逻辑服,看作是命令 3. 而 Broker(游戏网关)职责是对消息做转发,可看成是一名射击员;射击员手上有两把枪,分别是狙击枪和 AK47。 狙击枪的作用是单点目标,而 AK47 的作用则是扫射多个目标(就是所有的游戏对外服)。 场景一: 当设置为 true 时,表示射击员可以将手中的狙击切换为 AK47,什么意思呢? 意思就是如果在【游戏网关】中没有找到所指定的【游戏对外服】,则将广播数据发送给【所有的游戏对外服】。(换 AK 来扫射) 这么做的目的是,即使开发者填错了指定的游戏对外服,也能保证消息可以送达到游戏对外服。 场景二: 当设置为 false 时,表示找不到指定的【游戏对外服】时,则不管了。
-
brokerClusterLog
public boolean brokerClusterLogtrue 开启集群相关日志 -
brokerClusterFixedRateLog
public boolean brokerClusterFixedRateLogtrue 使用调度器打印集群信息,默认 30 秒打印一次(目前不提供打印频率设置) -
openTraceId
public boolean openTraceIdtrue 表示开启 traceId 特性 -
userProcessorExecutorStrategy
UserProcessor 构建 Executor 的策略默认使用 DefaultUserProcessorExecutorStrategy 实现类, 内容使用 Executors.newVirtualThreadPerTaskExecutor()
- 另请参阅:
-
userProcessorExecutorSelectorStrategy
-
-
构造器详细资料
-
IoGameGlobalConfig
public IoGameGlobalConfig()
-
-
方法详细资料
-
getExecutor
-
enableUserProcessorExecutorSelector
public void enableUserProcessorExecutorSelector() -
getExecutorSelector
-
isExternalLog
public boolean isExternalLog() -
isBrokerClusterLog
public boolean isBrokerClusterLog() -
isBrokerClusterFixedRateLog
public boolean isBrokerClusterFixedRateLog() -
setEventBusLog
public void setEventBusLog(boolean eventBusLog)
-