【聊天室 API】集群式摸鱼派聊天室 Beta 上线啦!

fishpi-77bd3ddd.png

很激动地告诉大家:摸鱼派的聊天室已经作为独立节点进行集群化运行啦!

和之前的聊天室有什么区别?

从用户角度来看,功能和之前是一致的。

无论你连接到哪个节点,所有的数据都是实时同步的,带给你最直接的感受就是流畅,一直都很流畅。

我们将聊天室的 WebSocket 与服务端分离开来,可以实现灵活添加多个节点进行集群负载均衡。这意味着聊天室能承载更多成员,并且响应速度相较之前更快、更稳定。

我们的首个测试节点采用了一台独立云主机,它拥有可以稳定承载 1000 人的带宽和硬件性能,足够支撑我们对摸鱼派下个里程碑的期望。

目前聊天室节点

北京:300人

成都:150人(感谢 @Yui 贡献的子节点)

总同时在线承载量:450人

节点仍在扩充中,如果你对成为节点有兴趣,请翻到本文最下方部分。

摸鱼派的客户端/插件开发者请注意

如果你的应用里有摸鱼派聊天室,请在 2025年3月1日之前 去除现有的 WebSocket 地址(我们后续会删除现有聊天室接口),按照下方文档的指示使用摸鱼派的聊天室子节点:

第一步,向摸鱼派请求获取一个子节点的 WebSocket 地址:

GET https://fishpi.cn/chat-room/node/get

返回 JSON 中的 data 就是你要连接的地址,我们将 ApiKey 同样帮你渲染好加入到 wss 连接的 URL 中了,直接使用即可。

返回内容:

Key 说明 示例
msg 显示用户当前所在的区服中文名称 上海一区
code 状态码,0为获取成功 0
data 自动分配的 WebSocket 地址
请取用该地址连接到聊天室频道
wss://x.x.x.x:10832?apiKey=xxx
avaliable JSONArray 格式,列出所有可用的节点
具体解释请看示例
[
  {
    "node": "节点 WSS 地址",
    "name": "节点中文名称",
    "online": "节点当前在线人数"
    "weight": 该节点权重(数值越高权重越高,权重可以理解为比例,按人数比例分配)
  },
  ...
]
apiKey 自动生成的 ApiKey,用于在手动选择节点时
和 avaliable 中的 node 拼接,以连接到自定义
节点的WebSocket服务器
ABCD1234....

第二步,使用 JS 请求连接摸鱼派新版子节点示例如下:

    // Init [ChatRoom] channel
    $.ajax({
        url: Label.servePath + '/chat-room/node/get',
        type: 'GET',
        cache: false,
        success: function (result) {
            new WebSocket(result.data);
        }
    });

就这么简单,完成了。相较于之前的连接方式,只是在连接之前加了一步,获取子节点的 WebSocket 地址。服务器会根据节点的负载自动为你分配一个合适的子节点地址,data 每次返回的内容是唯一的 URL ,不会同时出现多个 URL 。

第三步,请注意处理如下内容:

  1. 掉线机制:如果 WebSocket 服务端主动掉线了,请将重连机制也加入 GET https://fishpi.cn/chat-room/node/get 请求,服务端在监测到子节点掉线后,会停止分配此地址,所以每次连接请务必获取最新的聊天室子节点 URL ;
  2. 目前子节点功能处于 Beta 阶段,性能、功能上很有可能存在 Bug ,如你发现问题或有任何建议,欢迎私信我,采纳后有积分奖励;
  3. 子节点服务端的代码完全开源,欢迎参与 PR :https://github.com/FishPiOffical/rhyus

成为子节点

如果你有一台闲置的服务器,并且愿意成为摸鱼派聊天室子节点的一员,欢迎加入我们!

作为子节点,你可以:

  1. 获得额外收入:你的子节点将根据带宽使用量贡献加入到赞赏计划中
  2. 享受技术的乐趣:Rhyus(子节点服务端名称)仍在不停迭代中,你可以参与其中
  3. 特别勋章:你将获得一枚“摸鱼派子节点供应商”勋章

子节点要求:

  1. 服务器配置:CPU ≥ 2核 内存 ≥ 4G 空余硬盘空间 ≥ 1GB
  2. 公网IP、独享带宽(上下对等)≥ 10Mbps 国内主机
  3. 有 Linux 运维的经验,能按照文档部署程序、安装 Nginx 、更换 SSL 证书
  4. 服务器过期时间 ≥ 1年
  5. 我们每年会为你更换一次 HTTPS 证书
  6. 服务器及网络质量稳定
  7. 在摸鱼派社区无不良记录,同意签署保密协议,并承担泄密所导致的法律后果

如果你可以达到要求,欢迎向我私信投递申请!

上一篇
面经 - 2024.11.11 深信服
写在前头 本人5年工作经验,普通二本,gap10个月 第一轮 容器是如何实现资源隔离和资源限制的? 回答 namespace和cggroup 什么是chroot? 回答 changeroot的使用和作用 讲讲GPM模型 回答 go的调度设计 略 go的引用计数怎么实现的? 回答 不知道,没看过 ch ....
下一篇
又到周一,心累!!!
又是一周初, 到岗心已疲。 周而复始忙, 一息尚存期。 心头重担重, 累日积劳悲。
时间排序
本来上班就烦,还被机器人骂 日系三杰,只剩两杰 舔狗日记 24.12.9 怎么还不到周五,好困啊啊啊啊 又到周一,心累!!! 【聊天室 API】集群式摸鱼派聊天室 Beta 上线啦! 面经 - 2024.11.11 深信服 为什么饮料越来越像中药了? 摸鱼周报 20241206 舔狗日记 14.12.6 【冰冰动态】来个红包功能调整
上一篇
【日常维护】您的已读通知将被清除
[图片] 各位鱼油好: 我们将为您清除所有的已读通知(未读通知不会被清除),特此告知。
下一篇
【已恢复】摸鱼派暂时关闭用户注册
更新 鱼排短信相关接口已接入极验4.0验证码系统,感谢[链接] @[链接] 的赞助! 现已恢复用户注册。 各位好: 因摸鱼派短信验证码被恶意盗刷上万条,现暂时关闭用户注册入口,将在引入新的验证码方式后重新开放,给各位带来不便敬请谅解。 预计关闭时间:今天一天
当前作者
【招聘】鱼排社区渗透工程师若干名 在风雨中种花:焦虑、成长与人生的和解 【系统公告】摸鱼派已接入 AI 内容审核 【安全分享】摸鱼派安全运营,背后的故事 【已恢复】摸鱼派暂时关闭用户注册 【聊天室 API】集群式摸鱼派聊天室 Beta 上线啦! 【日常维护】您的已读通知将被清除 【鱼排故障公告】 【更新日志】动态刷新的清风明月!更好的搜索引擎! 【公告】旧图床整合通知 【国庆活动】国庆免签活动
上一篇
高开低走的 2024
前言 光阴似箭,岁月如梭 回顾了一下22、23年的年终总结,充满了美好的回忆,感叹时光过得如此之快,不知不觉在鱼排已经迎来第三个年终征文的总结,回顾2024全年,这一年的时光,突然发现我的脑海一片空白,完全不知道如何下手去写,因为今年的状态完全是高开低走的一年。下面就跟我一起从上帝视角回顾一下我的2 ....
下一篇
小王年度总结,虽然不怎么精彩,这就是平凡的我,嘿嘿😄
首先是我是谁 我是一个月前加入鱼排这个大家庭的,对于一些在聊天室活跃的朋友,我相信对我应该不是很陌生,因为我基本每天都在,他们一进聊天室就会看到一个跳舞的小狐狸吧啦吧啦的说个不停。当然也有一个铁铁不怎么在聊天室活跃,可能对我也不熟悉,在这我就重新介绍我自己吧,我是小王,一个简单,自由社恐与社牛并存的 ....
热门排序
分享日落! 2024 年终流水账 震惊!鱼派某管理员居然在半夜偷偷干这种事! 流の 2024 高开低走的 2024 【聊天室 API】集群式摸鱼派聊天室 Beta 上线啦! 小王年度总结,虽然不怎么精彩,这就是平凡的我,嘿嘿😄 2023 再见,你好 2024 关于二零二五年的杂谈 【双节同庆】🐙 跨越 1600 公里:囧途、家宴和一场最好的团圆​​ ❤️️ 旅游日记 1- 贵州