问题标签 [long-polling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 使用 Thin 进行长轮询连接
既然它是无螺纹的,那么基于红宝石的薄可以吗?
ajax - 为什么你需要一个异步请求的事件循环(例如,AJAX 长轮询)
我知道使用普通的线程网络服务器(例如 Apache)进行 AJAX 长轮询被认为是糟糕的设计……但我真的不明白为什么。
是不是因为每个长轮询请求比正常请求花费的时间要多得多(从而占用了处理器)?如果是这样的话,线程真的会占用那么多开销,以至于它们在使用前不能保持空闲一段时间吗?
flash - 在 ActionScript 中使用 URLStream 进行长轮询 - 如何知道何时对数据进行处理?
我正在尝试打开与将定期通过 JSON 对象发送的 URL 的连接。我知道我需要使用 URLStream 和一些事件回调,但是在了解数据流如何“工作”或一般操作流程方面我一无所知。假设我知道如何打开连接并发送正确的请求标头。首先,一些相关代码:
如果服务器喷出 JSON 对象,我怎么知道停止读取一个完整的对象并将其传递给另一个函数?dataReceived 多久调用一次?当服务器发送一些东西时,它是否指示 JSON 有多大,以便您知道何时停止?在阅读了互联网上的各种代码片段后,我确定这些将是这次行动的主要参与者:
pe.bytesLoaded
stream.readUTFBytes(length:String)
可能还有pe.bytesTotal
我想我不知道如何一起使用它们。bytesTotal 是传入的完整 JSON 对象的总预期大小吗?我对此知之甚少,我真的不知道该问什么,所以我只是以一种毫无头绪的方式抛出问题。我一直在阅读http://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/flash/net/URLStream.html但示例代码是回调的骨架,所以它没有用。
希望我的问题很清楚,谢谢!
编辑:单个 JSON 条目以回车符 \r 终止
http - (全功能)长轮询服务器如何抽象地工作
由于您使用的是事件循环而不是线程,实际服务器的外观如何?
我知道它使用事件循环,但你如何分离请求?以及如何防止服务器运行速度极慢(因为它是无线程的,我认为一次只能推送一件事?)
某种伪代码会很棒。
原谅我的无知;当然,如果有什么地方可以用非基本的“这已经足够好,直到你获得 1000 名访客”来解释它,我会很高兴知道这一点。
flash - 我将如何为基于 (Flash) 浏览器的游戏实施 COMET?
我目前正在尝试编写一个基于浏览器的游戏,允许多个用户在 2D 地图中导航。它是基于 RPG 的,如果两个用户碰巧出现在同一帧中,则需要 COMET 作为一种技术,让两个用户出现在一个屏幕上并进行交互。
另外,在游戏中,我将地图嵌入到 SWF 文件中,但是当玩家进入我绘制的一些关键区域时,我使用 HTTP 请求从本地服务器获取数据。我正在考虑使用 XMLSocket,但想知道是否有一个库,或者除了 XMLSocket 之外的某种实现,可以帮助我将信息推送或广播到多个浏览器。
(顺便说一句,我对 Flash 和服务器-客户端交互比较陌生,已经学习了大约 4 周......链接很有帮助!)
c# - Java 或 C# 中长轮询 / Comet 的最佳选择?
在您看来,哪个本机服务器最适合实现长轮询/彗星?第一个目标应用程序是聊天,但还会有其他实现——我们基本上需要推送到客户端的功能。
我将答案限制在 C# 或 Java 上,因为这两种技术在我的工作场所占主导地位。要求和往常一样:性能,易于部署/编程,定制,......
php - 使用while循环时如何解锁浏览器?
我向一个运行 while 循环的 php 文件发出 ajax 请求,该循环在数据库中查找新数据,但我无法为其提供新数据,因为在等待新数据时浏览器被阻止。
有谁知道如何不阻止浏览器?
python - 捕获客户端断开连接的事件!- Gevent/Python
我正在使用长轮询与 gevent 聊天。等待在聊天中发布新消息时,我正在使用 Event.wait() 。
我想处理客户端与某些功能断开连接的情况:
例如返回“客户端已断开连接”作为其他聊天用户的消息
这可能吗?=)
java - 如何在 Spring MVC 3 中使用 Servlet 3 @WebServlet 和异步?
我想将 servlet 3.0 异步支持与 spring MVC 集成。就像是:
可能吗?
java - WebSockets 与长轮询与 TCP 可扩展性/易用性
我正在为基于 Java 的移动 Web 应用程序编写后端,我想知道就可扩展性和易用性而言,使用 WebSockets 与 Comet 等长轮询解决方案相关的优缺点是什么。另一种选择也是使用 TCP 实现我自己的解决方案。根据我的阅读,您似乎需要在专用服务器上运行长轮询解决方案,因为当您开始与大量用户打交道时,它们在 Tomcat/Jetty 中运行不佳。WebSockets 听起来可以更好地扩展。在 Comet 上使用 Websockets 是否有任何缺点,或者我应该使用 TCP 连接使用我自己的解决方案吗?我正在寻找使用最少流量的选项。