1

我想设计具有低延迟的网络应用程序(例如游戏)。我认为 ajax 的标头会增加延迟。我真正想要的是一个连接永不中断的协议,客户端和服务器都可以立即相互推送数据。(因此彗星并不是一个真正的选择,因为只有一侧有交流)。最好将数据作为二进制发送并压缩。

编辑:我想要 java/flash/silverlight 的替代品,因为我的平台是 ipad/iphone,它不支持 java/flash/silverlight

请不要推荐任何/需要java/flash/silverlight的东西,谢谢

4

4 回答 4

1

根据您的时间线和强加用户要求的能力,您可以使用WebSockets。有关浏览器支持的信息,请参阅链接文本。

于 2010-08-18T01:09:52.013 回答
1

在 Actionscript 中使用 Flash 和 Socket 编程可以最轻松地完成您可能正在寻找的内容。这将允许您保持与服务器的持续连接(您还必须编写它,我会推荐 Haxe),并为交换信息提供相当低的延迟。

请记住,尽管在此级别进行通信将具有挑战性,因为您将需要设计自己的协议来打包和解包您发送的数据。

于 2010-08-17T02:00:33.863 回答
0

看看 BlazeDS,它使用 AMF 作为两者之间的序列化协议。BlazeDS 是一个 Java 服务器平台,用于在 Spring 中使用 AMF 序列化到 Flex/Flash 应用程序来构建应用程序。AMF 是一种占用空间非常小的二进制协议。网上流传着一个比较 Flash 应用程序中的 JSON、XML 和 AMF 的示例。

http://www.jamesward.com/census/

http://inseria.com/2008/09/amf-vs-json-vs-xml.html

于 2010-08-17T03:28:26.467 回答
0

Flash、Java 和 Silverlight 都支持套接字。这将为您提供一个没有 http 标头的连续连接,可以允许数据在任一方向发送。

缺点是,它不适用于所有网络环境。

于 2010-08-17T02:00:11.180 回答