teamgram-architecture

Overview of Teamgram Server's 6-layer microservice architecture with 11 services, gRPC/Kafka communication, and etcd service discovery for Telegram-compatible messaging backends.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "teamgram-architecture" with this command: npx skills add zhihang9978/teamgram-architecture

Teamgram Server 总体架构概览

系统定位

Teamgram Server 是一个 Telegram/MTProto 兼容的微服务系统,配合 KHF Android 客户端使用。

分层架构

[KHF Android Client]
    |
    |  MTProto (obfuscated2 / tcp / websocket)
    v
[gnetway: interface.gateway]
    |
    |  gRPC (go-zero zrpc, etcd discovery: interface.session)
    v
[session: interface.session]
    |
    |  gRPC proxy by IDMap (mtproto.RPC* -> bff.bff)
    v
[bff: bff.bff]
    |
    |  gRPC calls (etcd): service.biz_service / service.authsession / service.status / messenger.msg / service.dfs / service.media / service.idgen
    v
[biz_service + others]
    |
    |  Kafka topics:
    |    - Inbox-T (write path)
    |    - Sync-T  (fanout/push path)
    v
[messenger.msg] -> [Kafka Inbox-T] -> [inbox helper]
                         |
                         v
                      [Kafka Sync-T] -> [messenger.sync] -> [session] -> [gnetway] -> [client]

6 层职责

服务职责
入口层gnetwayTCP/WebSocket/HTTP MTProto 网关
会话路由层session按 auth_key / session_id 聚合与路由,作为 gnetway 与 BFF 的桥
BFF 聚合层bff.bff实现 Telegram RPC 接口的 27 个模块
核心业务层biz_service6 个 helper(user/chat/dialog/message/updates/code)
消息投递层messenger.msg + inboxKafka Inbox-T 写入 inbox/outbox/未读等状态
同步分发层messenger.syncKafka Sync-T → 推送 updates/rpcResult 回 session

11 个核心微服务清单

服务名etcd Key端口职责
gnetwayinterface.gateway10443/5222/11443MTProto 网关(TCP/WS/HTTP)
sessioninterface.session20120会话聚合与 RPC 路由
authsessionservice.authsession20450auth_key 管理
bffbff.bff2001027个RPC模块聚合层
biz_serviceservice.biz_service205006个helper(user/chat/dialog/message/updates/code)
msgmessenger.msg20030消息投递 + Kafka生产
inbox(Kafka consumer)-Inbox-T 消费者(写入 inbox/outbox/未读等状态)
syncmessenger.sync20420同步分发(Kafka→session)
idgenservice.idgen20660Snowflake/Seq ID生成
statusservice.status20670在线状态/会话TTL
dfsservice.dfs20640 + 11701Minio 文件存储 + HTTP 网关
mediaservice.media20650媒体元数据/缩略图处理

注:msg/inbox/sync 属于 messenger 域的不同子服务/角色。

服务间通信方式

  1. gRPC (go-zero zrpc):所有微服务间同步调用均使用 gRPC,通过 etcd 服务发现
  2. Kafka 异步消息:消息投递(Inbox-T)和同步分发(Sync-T)使用 Kafka 解耦
  3. MTProto 二进制协议:客户端与 gnetway 之间的通信协议

配置与服务发现

  • 所有服务通过 YAML 声明 Etcd.Hosts + Etcd.Key 注册到 etcd
  • 调用端用同 Key 发现目标服务
  • 关键 etcd Key 列表:interface.gateway, interface.session, bff.bff, service.biz_service, service.authsession, service.idgen, service.status, service.dfs, service.media, messenger.msg, messenger.sync

Source Code References

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

三色人格陪伴

恋人、损友、死敌三种陪伴模式。记忆完全隔离不串档,一秒切换情绪状态,承包你所有治愈、解压与情绪拉扯需求。

Registry SourceRecently Updated
General

Zero Api Key Web Search

OpenClaw skill for source-backed web search, page reading, and evidence-aware claim checking. No API keys required by default; optional providers can be enab...

Registry SourceRecently Updated
General

Novel Writer V3.2 - 小说写作引擎

专业小说写作引擎V3.2,支持短篇(3章)到超长篇(500万字)。内置AI味量化检测、四层质检、伏笔管理、角色状态追踪、断点续传。 自动根据字数裁剪流程:短篇模式(<10章)/ 中篇模式(10-50章)/ 长篇模式(50章+)。 触发场景:写小说、小说大纲、小说创作、网文写作、长篇小说、百万字小说、章节规划、 角...

Registry SourceRecently Updated
General

Hk Stock Morning Report

Generate HK stock market morning report (股市晨報) for bank trading desks. Triggers: "生成晨报","股市晨报","今日股市","港股晨報" 推送:微信個人 + 飛書群 | 數據:騰訊財經+stcn.com+格隆匯+實時搜索

Registry SourceRecently Updated