百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
S

slanger

> 编程语言
开源

支持与 Pusher 库兼容的 Open Pusher 实现

1.7K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

支持与 Pusher 库兼容的 Open Pusher 实现

Slanger

UNMAINTAINED - Slanger 已被作者弃用且不再维护。请自行承担风险使用。

重要提示! Slanger 不应包含在您的 Gemfile 中。RubyGems 用作分发机制。如果将其包含在您的应用中,很可能会出现依赖冲突。针对与您的应用兼容性进行依赖更新的 PR 将被关闭。感谢您的阅读,欢迎使用 Slanger!

典型用法

gem install slanger
redis-server &> /dev/null &

slanger --app_key 765ec374ae0a69f4ce44 --secret your-pusher-secret

Slanger 是 Pusher 协议的独立服务器 Ruby 实现。 并不是专门为在 Rails 或 sinatra 应用程序中运行的,但它可以很容易地 作为 gem 安装。 Bundler 有多种用途,其中一个用于安装。

关于

Slanger 是一个使用 Ruby 编写的 Pusher 协议的 开源 服务器实现。它旨在横向扩展到 N 个节点,并且对订阅者连接到哪个 Slanger 节点是无知的,即同一频道的订阅者不需要连接到同一个 Slanger 节点。多个 Slanger 节点可以在负载均衡器后运行,无需特殊配置。从本质上讲,它的设计非常容易扩展。

在给定的 Slanger 节点中,当第一个订阅者连接时,会使用 Redis 共享存在通道状态。当在 Slanger 节点中实例化存在通道时,它会向 Redis 查询该通道在系统中所有节点的全局状态,然后将该状态内部复制。之后,当订阅者连接或断开连接时,节点会向所有感兴趣的节点发布存在消息,即所有至少有一个感兴趣该给定通道的订阅者的节点。

Slanger 够聪明,能够判断新的频道订阅是否属于同一用户。在这种情况下,它不会向订阅者发送状态信息。这种情况通常发生在用户打开多个浏览器标签时。以一个由状态频道支持的聊天室为例,我们不希望"Barrington"在状态信息中出现 N 次。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Ruby

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言