V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
MaMimi
V2EX  ›  分享创造

BarkLB: Bark 推送服务的负载均衡与高可用

  •  
  •   MaMimi · 9 天前 · 1251 次点击

    介绍

    Bark 推送服务通常来说是单节点运行的, BarkLB可以通过配置多个服务器地址尽可能保证推送通知送达.

    快速开始

    需配合已有 bark 原版服务器使用, 并确保 barklb 可以访问原版 bark 服务.

    通过 Docker 运行:

    docker run -d --restart=always \
      --name barklb \
      -p 18089:8089 \
      -e BARK_NODES="https://bark-origin-server1:port,https://bark-origin-server2:port"
      -v ${HOME}/barklb-data:/barklb-data \
      martin0313/barklb:latest
    

    启动成功后在 bark app 中添加服务器, 地址为 barklb 运行的地址和端口. 若服务端添加成功推送 key 会显示为LB-xxxxxxxx.

    随后其余使用方式与原版 bark 无异.

    BARK_NODES 参数指定了两个原版 bark 服务节点. barklb 会在两个节点中随机选择节点发送通知. 若节点下线则尝试采用其他节点. 
    
    可以添加配置`https://api.day.app`, 这是 bark 官方提供的服务器地址.
    

    功能与特性

    目前仅对接了原版 bark 服务端的 post body 推送形式

    1. 负载均衡策略为简单的随机策略, 主要解决的问题为尽可能保证高可用.
    2. 健康检查会及时更新在线服务器列表.
    3. 一个推送 key: LB-xxxxxxx 即可使用多个 bark 服务后端. 原版服务器的注册,删除,配置变更等均由barklb自动操作.
    4. bark 服务节点配置变更: 修改启动参数BARK_NODES, 服务端重启即可, 手机 app 无需重新注册和其他额外操作.

    链接

    Github: https://github.com/mty0313/barklb

    DockerHub: https://hub.docker.com/r/martin0313/barklb

    4 条回复    2025-02-13 18:21:51 +08:00
    xiangchen2011
        1
    xiangchen2011  
       9 天前
    我在用 bark ,挺好的,支持楼主
    xiangchen2011
        2
    xiangchen2011  
       9 天前   ❤️ 1
    为楼主点上了第一课小⭐️⭐️
    MaMimi
        3
    MaMimi  
    OP
       9 天前
    @xiangchen2011 #2 给你也点一颗小心心
    mylofsh
        4
    mylofsh  
       9 天前 via iPhone
    厉害,可以避免单节点故障风险
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1004 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 17ms · UTC 19:29 · PVG 03:29 · LAX 11:29 · JFK 14:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.