Peerjs: 服务器宕机了吗?

创建于 2020-05-18  ·  25评论  ·  资料来源: peers/peerjs

你好,

一切都很顺利,但是从昨天开始突然就不行了。 我可以连接到它,但没有收到消息。 (我什么都没碰)
发生了什么 ? 如何解决这个问题?

谢谢

最有用的评论

@lnogueir
我很确定它会解决问题 - 是的。 我现在运行我自己的 peer-js 服务器大约一个月了,每天有数百个调用没有这样的问题。
使用https://github.com/peers/peerjs-server设置服务器相对容易

编辑:由于 0.peerjs.com 是一个信号服务器,而不是一个 stun/turn-server,它可能是公共 peerjs 信号服务器的问题

所有25条评论

我建议提供控制台的输出以获取详细的问题描述。
还要记住,公开可用的 PeerServer 可以在任何给定时间达到其最大连接数(以前发生在我身上)。 考虑自己运行一个信令服务器

控制台中没有消息。

这是我的源代码:
https://pastebin.com/xXSy8S3M

什么都没有发生。

您尝试连接的对等方是否存在?
您应该添加错误处理程序以检查出了什么问题
这应该适合您的代码:

peer.on('error', function(err) {
    console.log("Error: ", err);
});

您尝试连接的对等方是否存在?
您应该添加错误处理程序以检查出了什么问题
这应该适合您的代码:

peer.on('error', function(err) {
    console.log("Error: ", err);
});

是的,对等 ID 存在,并且使用错误处理程序我什么也得不到。

在文档中,我刚刚阅读了“云 PeerServer 的 API 密钥。这不用于 0.peerjs.com 以外的服务器。” 在文档中,它是新的吗? 因为我不会用一个。

我很困惑,一切正常。

Firefox 有时会报错:
Firefox 无法与地址wss://0.peerjs.com/peerjs?key=peerjs&id=123222589562487856955685485555&token=ocyxworx62i的服务器建立连接

在网络选项卡中,我得到 101 HTTP 代码。

公共 TURN 服务器似乎实际上已关闭,但 STUN 应该没问题。
尝试指定端口、SSL 和一些iceServer。

const Config = {
    secure: true,
    port: 443,
    iceServers: [
        { urls: 'stun:stun.l.google.com:19302'  }, 
        { urls: 'stun:stun1.l.google.com:19302' }, 
        { urls: 'stun:stun2.l.google.com:19302' }, 
    ]
};

var peer = new Peer(Config); 

公共 TURN 服务器似乎实际上已关闭,但 STUN 应该没问题。
尝试指定端口、SSL 和一些iceServer。

const Config = {
    secure: true,
    port: 443,
    iceServers: [
        { urls: 'stun:stun.l.google.com:19302'  }, 
        { urls: 'stun:stun1.l.google.com:19302' }, 
        { urls: 'stun:stun2.l.google.com:19302' }, 
    ]
};

var peer = new Peer(Config); 

谢谢,我试过了,还是一样。
“连接”、“打开”和“错误”事件不会被触发。

这是浪费时间,我喜欢这个图书馆,但我会寻找替代方案。

服务器似乎不稳定和/或过载。 当尝试连接到0.peerjs.com服务器时,我经常得到

  • 错误的 HTTP 状态代码
  • 超时
  • Websocket 中的一条消息告诉我已达到服务器的限制

上述消息如下所示:

{
    "type":"ERROR",
    "payload":{"msg":"Server has reached its concurrent user limit"},
}

服务器的维护者会考虑升级它吗? 我愿意一次性捐款,如果有必要,我会经常捐款。

我有同样的问题。 一切都运行良好,现在突然间我无法连接到服务器并不断收到:
peer.min.js:1 POST https://0.peerjs.com/peerjs/wun5gx7lj7000000/141ot3fd9cwf/id?i=1 net::ERR_TIMED_OUT
这是 peerjs 服务器或公共 STUN 和 TURN 服务器的问题吗?

@lnogueir
我很确定它会解决问题 - 是的。 我现在运行我自己的 peer-js 服务器大约一个月了,每天有数百个调用没有这样的问题。
使用https://github.com/peers/peerjs-server设置服务器相对容易

编辑:由于 0.peerjs.com 是一个信号服务器,而不是一个 stun/turn-server,它可能是公共 peerjs 信号服务器的问题

@lnogueir
我很确定它会解决问题 - 是的。 我现在运行我自己的 peer-js 服务器大约一个月了,每天有数百个调用没有这样的问题。
使用https://github.com/peers/peerjs-server设置服务器相对容易

我会尝试设置它。 谢谢!

编辑:
@Florrr
设置我自己的 peerjs 服务器解决了我所有的超时问题,一切都恢复正常。
再次,谢谢。

不为 peerjs 实例提供一个,但是
而是一个服务器列表,然后选择一个没有超时的服务器? 这
然后,信令 ID 也可以包含信令服务器 URL。 我们可以
然后维护一个全局可用服务器的列表。

2020 年 5 月 25 日星期一 04:57 Lucas Nogueira, notifications @github.com 写道:

@Florrr https://github.com/Florrr
设置我自己的 peerjs 服务器解决了我所有的超时问题和一切
已恢复正常。
再次,谢谢。


您收到此消息是因为您发表了评论。
直接回复此邮件,在 GitHub 上查看
https://github.com/peers/peerjs/issues/671#issuecomment-633351840 ,或
退订
https://github.com/notifications/unsubscribe-auth/AALME5UNSH456EHDNAPZ7HDRTHNDHANCNFSM4NEJLYXA
.

服务器又不稳定了? 我正在开发一个使用这个库的应用程序,大约 16 小时前它工作得很好,现在连接超时了

不提供 peerjs 实例,而是提供一个服务器列表,然后选择一个不超时的服务器是个好主意吗? 然后,信令 Id 也可以包含信令服务器 URL。 然后我们可以维护一个全球可用服务器的列表。

我怀疑这是可能的,因为两个对等点都需要连接到同一个信令服务器。 如果您随机选择信令服务器(或多或少),则不能保证使用相同的服务器。

@HidalgoIvan我不是服务器的维护者-所以我不知道服务器的当前状态。 但由于信号服务器似乎不稳定,我建议您设置自己的。 如前所述,这应该相对便宜且易于操作。 (此外,您可以修改服务器以添加其他功能)

随意使用我的,但不保证正常运行时间: https :

谢谢@Prior99 ,但是自从我今天早上开始制作自己的服务器以来,我想完成。 我使用 docker 安装了 peerjs。 如果我在我的服务器上打开端口 9000,这或多或少是有效的。 问题是它只适用于 IP 地址,而不是 ssl,而不是网站地址。 您是如何设法使用 peerjs.92k.de 作为服务器地址而不是 IP 地址的?

我用 ansible 检测了 Hetzner 服务器。 您可以在此处检查配置: https :

重要的部分是使用为您处理 ssl 的反向代理。 我正在使用球童,因为我需要做的只是两行确认。

@Prior99 ,很抱歉打扰你,但我完全迷失了我需要学习运行我的服务器的所有东西......
所以我最终计划使用你的,直到我设法拥有合适的服务器。 不幸的是,我也无法让你的工作......我正在创建对等点:

var peer = new Peer({
    host: 'peerjs.92k.de',
    port: 443,
    debug: 3
});

当我获得一个 ID 时,它似乎可以工作,但我无法让一个对等方连接到另一个。 这在使用 0.peerjs.com 时运行良好,我没有在我的代码中触及任何东西。 我是否正确地创建了对等点?

当我获得一个 ID 时,它似乎可以工作,但我无法让一个对等方连接到另一个。 这在使用 0.peerjs.com 时运行良好,我没有在我的代码中触及任何东西。 我是否正确地创建了对等点?

对等点已正确创建,但您仍需要 STUN 和 TURN 服务器。 STUN 不是问题:有很多可以免费使用。 但是你肯定需要一个 TURN 服务器(可能是你自己的)来使对等点能够在它们位于对称 NAT 后面时进行连接。

:javascript var peer = new Peer({ host: 'peerjs.92k.de', port: 443, debug: 3, config: { iceServers: [ { urls: 'stun:stun.l.google.com:19302' }, { urls: 'stun:stun1.l.google.com:19302' }, ..., { urls: 'turn:your.own.host:3478', username: 'someuser', credential: 'somepass'}, ] }, });

所以我尝试了很多组合,但仍然无法正常工作。 我落后于正常的 NAT。
这是设置:

var peer = new Peer({
    host: 'peerjs.92k.de',
    port: 443,
    config: {'iceServers': [
            { url: 'stun:stun.l.google.com:19302' },
            { url: 'stun:stun1.l.google.com:19302' },
            { url: 'stun:stun2.l.google.com:19302' },
            { url: 'stun:stun3.l.google.com:19302' },
            { url: 'stun:stun4.l.google.com:19302' }
        ]
    },
    debug: 3
});

我用它建立了基本的例子。 你能试试看它是否适合你吗?
https://www.txori.com/peerjs

抱歉,我们稍后会重新启动它

您需要指定secure: true ,如下所示:

new PeerJS(null, { host: "peerjs.92k.de", secure: true });

我发布了一些游戏,这些游戏似乎在不同平台上的许多浏览器中以及使用我的服务器的不同网络设置中运行良好。

例如:
https://gitlab.com/prior99/frabble
https://prior99.gitlab.io/frabble/#/main -menu

谢谢@Prior99 ,但即使使用secure: true,我也无法让它工作。 经过两天的尝试和重复,这似乎不是来自您的服务器。 从那以后,我尝试了许多其他人,结果总是一样:我设法获得了对等代码,但没有别的。 奇怪的是,如果我使用基本设置连接到 0.peerjs.com(当服务器启动时......),一切都会完美运行。
我真的不明白这是怎么回事...

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

lucastwong picture lucastwong  ·  3评论

senihtosun picture senihtosun  ·  5评论

bilo1967 picture bilo1967  ·  7评论

kahrkunne picture kahrkunne  ·  4评论

Kitanga picture Kitanga  ·  5评论