可以在客户端创建多少个WebSocket连接

时间:2015-09-04 10:41:13

标签: websocket java-websocket

我已经开始学习网络套接字了。在今天的时间里必须学习技术。 但我很想知道更多相关信息。我的基本问题是可以在客户端创建多少个WebSocket连接。

我的通常应用程序是基于html UI,在服务器上我有基于休息的服务。我需要跟踪是否

  1. 会话超时已经发生
  2. 是否丢失了与服务器的连接?一种用于检查连接的池化程序是否存在。
  3. 所以我在客户端创建2个websocket对象,为他们创建不同的URL。

    我希望我已正确实施了它?

1 个答案:

答案 0 :(得分:2)

一旦打开到 SAME URL (ws://127.0.0.1:8080 / WebSocket-context-root / getResource)的新连接,浏览器基本上会关闭旧的websocket连接。你可以像“ws://127.0.0.1:8080 / WebSocket-context-root / getResource /”+ k那样保持小小的攻击。其中k是任意数字/任意随机字符串。在服务器端,只需忽略路径变量k。

通过这种方式,您可以同时打开多个连接。每个域的max-number-connection的浏览器限制在这里不适用(在Firefox上测试)。我尝试了最多25个并行连接。

您可以使用websocket.readyState来检查Web套接字连接的状态。

onclose Web套接字的事件具有关闭连接的原因代码。

用户下面的代码来测试活动连接数。

     var x=0
     var intervalID = setInterval(function () {
     websocket = new WebSocket("ws://127.0.0.1:8080/WebSocketApi/web/chat/"+x);

      websocket.onopen = function (evt) {

      console.log('open')
      }

      websocket.onmessage = function (evt) {
            console.log('msg');
        }
      websocket.onclose= function (evt) {
            console.log('closed');
        }
      if (++x === 15) {
          window.clearInterval(intervalID);
      }

 }, 1);