【问题标题】:No Latency time with xmpp (smack - openfire)?xmpp(smack - openfire)没有延迟时间?
【发布时间】:2012-04-05 14:27:33
【问题描述】:

我正在尝试与 2 个 xmpp 客户端进行通信,但这不像消息传递或聊天。它更像是在一端引起的事件和在另一端(实时)执行的动作。我希望客户端 A 尝试向客户端 B 发送数据包时不会有任何延迟时间。如果可用,是否有任何可能的方法来最小化它应该被忽视。?是否可以这样做或通过任何其他方式?

【问题讨论】:

    标签: openfire smack asmack


    【解决方案1】:

    首先,这仍然是消息传递。

    至于您的延迟,在进程之间发送数据时总会有一些延迟。你没有说你正在寻找什么容忍水平,而不是你得到什么,所以很难说你应该做些什么来改善它们。

    影响当前延迟的最大因素是消息大小和网络速度。当然,直接点对点通信会为您的消息删除一跳,但在不了解您的应用程序的情况下,无法判断这是否是可接受的方向。

    在快速网络上,一条小消息应该在几毫秒内送达。如果它是一个慢速网络,那么您的问题就在任何通信协议之外。

    【讨论】:

    • 嗨罗宾,感谢您的回复。我明白会有一些延迟。所以这是我的用例。消息大小将非常小,每个只有 3 个字符。基本上是在尝试开发类似youtube.com/watch?v=WRONDJO28mk“Draw Some Thing”的游戏,将绘制表面值的人的 x 和 y 坐标发送到另一台设备,以便在那里更新和显示。你理解流量对吗?!你能帮我吗?
    • Draw Something 不能实时工作,它是一个异步游戏。我做了一些类似于你描述的事情(同步,不像 Draw Something)并且延迟没有造成问题。你有没有亲自测试过它的性能?
    • 感谢马克的回复。是的朋友,我已经用 openfire 测试了 smack 来发送消息(基本上是一个类似聊天的应用程序)。但我想如果它与在游戏中实现某些东西一样。但是现在看到你的回答“Draw Something 不能实时工作,它是一个异步游戏”——我不知道什么是异步游戏!你能帮我一些指示或线索来帮助我构建类似的东西来绘制我正在寻找的功能吗? (P.S - 我还没有将它作为游戏尝试过,但想澄清一下以获得一些清晰的想法)请帮助。
    • 我看不出您想要做什么有任何问题。这只是一种协作形式,而 XMPP 非常适合这一点。看起来画一些东西可能只是在回放其他人画的东西,而不是像你想做的那样实时进行。顺便说一句,我也不知道异步游戏应该是什么,这个词对我来说没有多大意义。
    • 如果你不熟悉这个词,你可以随时用谷歌搜索...这个链接gamecareerguide.com/features/1060/game_design_challenge_.php 解释了它,甚至使用了 Draw Something 作为例子。本质上,与您观看玩家正在做的实时多人游戏不同,它是一个回合制游戏。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-05
    • 2017-04-18
    • 1970-01-01
    • 1970-01-01
    • 2014-02-04
    相关资源
    最近更新 更多