接口 BeaconAgent


public interface BeaconAgent
Beacon agent 对业务插件暴露的总门面:读有效配置 + 查服务发现。MVP 只读不写。
  • 方法概要

    修饰符和类型
    方法
    说明
    boolean
    awaitRegistered(long timeoutMillis)
    有界等待 agent 首次注册成功(控制面权威应答返回、zone 已按响应回填)。
    有效配置只读视图。
    boolean
    agent 当前是否已连上控制面。
    服务发现查询(同步 HTTP,请在异步线程调用)。
    当前有效配置整体 md5;尚无有效配置时为空。
    当前 agent 身份(namespace/serverId/role/group/zone)。
    跨服消息中间件门面(FR-26):定向 / RPC / 主题 / 按玩家寻址的通用传输。
    本机调度 / 健康门面(FR-148):取调度候选与健康事实的唯一入口。
  • 方法详细资料

    • identity

      AgentIdentity identity()
      当前 agent 身份(namespace/serverId/role/group/zone)。
    • config

      EffectiveConfig config()
      有效配置只读视图。
    • discovery

      Discovery discovery()
      服务发现查询(同步 HTTP,请在异步线程调用)。
    • messaging

      Messaging messaging()
      跨服消息中间件门面(FR-26):定向 / RPC / 主题 / 按玩家寻址的通用传输。

      始终返回非 null;模块未开启或 Redis 未连上时其 Messaging.isAvailable() 为 false, 业务插件据此优雅降级。

    • scheduling

      BeaconScheduling scheduling()
      本机调度 / 健康门面(FR-148):取调度候选与健康事实的唯一入口。

      始终返回非 null;控制面不可用时按本地快照 fail-static 降级,绝不阻塞玩家链路(见 BeaconScheduling)。

    • connected

      boolean connected()
      agent 当前是否已连上控制面。

      false 表示正在用本地快照 fail-static 运行——配置仍可读,但可能非最新。

    • effectiveMd5

      Optional<String> effectiveMd5()
      当前有效配置整体 md5;尚无有效配置时为空。可用于业务侧判断是否已收敛。
    • awaitRegistered

      boolean awaitRegistered(long timeoutMillis)
      有界等待 agent 首次注册成功(控制面权威应答返回、zone 已按响应回填)。

      阻塞当前线程至多 timeoutMillis 毫秒;已就绪则立即返回。等待判据是「首次注册成功」 而非「zone 非空」——未指派 zone 是合法终态。timeoutMillis <= 0 表示不阻塞、只查当前是否已就绪。

      返回:
      true=已就绪(注册成功过);false=超时仍未就绪(如控制面不可用)