skynet——分布式支持

概述

skynet 本身只解决"单机多核",集群是后来补的基础设施。两套方案是前后代关系,harbor 是早期的 master/slave 模式,cluster 是后来推荐的替代。

模式

harbor(老方案,master/slave)

  • 每个 skynet 进程是一个 slave,其中一个配 standalone多启一个 cmaster​ 做协调

  • 每个 slave 内有个 harbor 服务​ 负责和其他 slave 通信

  • 服务地址是 32bit,高 8bit = harbor id,所以最多 255 个节点(id 0 保留)

  • 节点内/节点间消息投递对业务透明------skynet 根据地址高 8bit 决定直投还是转 harbor

    服务地址: [harbor_id:8bit][service_handle:24bit]

优点:C 层转发,开销极小;地址透明,业务代码不用感知跨节点

缺点:

  • ≤255 节点

  • 静态配置,启动时定死

  • 无容错------任意节点挂了整个网络视为异常,只能同机房局域网用,不能跨机房

cluster(新方案,推荐)

  • 用字符串 node 名标识节点(如 "game1"、"gate"),节点数无上限

  • Lua 层 RPC(cluster.call/ cluster.send),走二进制协议

  • 支持 cluster.reload()运行时更新配置,节点可动态增删

  • 每个节点独立注册自己提供的服务,查询靠 cluster.proxy

相关推荐
Thomas.Sir6 天前
第21课:PyTorch|GPU多卡训练与分布式训练基础【让多卡并行成为你的加速引擎】
人工智能·pytorch·分布式
Cicada1286 天前
库存消息消费的正确性设计——从幂等窗口到批量流水线
分布式·系统架构
Francek Chen7 天前
【大数据处理与分析】数据仓库Hive:04 数据仓库Hive概述
大数据·数据仓库·hive·hadoop·分布式
Gl�ria7 天前
Hadoop/YARN 集群缩容:下线DN节点
大数据·hadoop·分布式
吉甫作诵7 天前
Kafka 集群安装与运维实战:消费组排查、Offset 重置与副本重分配
大数据·运维·分布式·kafka·消息队列
是Dream呀8 天前
Harness 工程:让 Agent 真正把任务做完
人工智能·分布式·缓存·agent
yt004yt8 天前
绿岛数字化平台搭建:VOCs 监测与能碳数据一体化方案
大数据·分布式
天天喝旺仔8 天前
分布式服务容错实战:用 Sentinel 实现限流、熔断与降级
分布式·微服务·云原生·sentinel
lisanmengmeng8 天前
分布式追踪与监控:Skywalking(三)
分布式·skywalking