Ich versuche mit 2 xmpp Clients zu kommunizieren, aber das ist nicht wie Messaging oder Chat. Es ist mehr wie ein Ereignis, das an einem Ende verursacht wird, und eine Aktion, die an einem anderen Ende (Echtzeit) ausgeführt wird. Ich wünsche mir, dass es keine Latenzzeit geben wird, wenn ein Client A versucht, Pakete an Client B zu senden. Wenn verfügbar, gibt es einen möglichen Weg zu minimieren, dass er unbemerkt bleiben sollte. Ist es möglich, dies oder auf andere Weise zu tun?Keine Latenzzeit mit xmpp (smack - openfire)?
Antwort
Zunächst ist das noch Messaging.
Wie bei der Latenzzeit wird es immer eine gewisse Latenz geben, wenn Daten zwischen Prozessen gesendet werden. Sie haben nicht gesagt, welche Toleranzstufen Sie suchen, im Gegensatz zu dem, was Sie bekommen, daher ist es schwer zu sagen, was Sie tun sollten, um sie zu verbessern.
Die größten Faktoren für die aktuelle Latenz sind die Nachrichtengröße und die Netzwerkgeschwindigkeit. Natürlich würde direkte Punkt-zu-Punkt-Kommunikation einen Sprung für Ihre Nachricht entfernen, aber ohne Ihre Anwendung zu kennen, gibt es keine Möglichkeit zu sagen, ob dies eine akzeptable Richtung ist.
Eine kleine Nachricht sollte in wenigen Millisekunden in einem schnellen Netzwerk übermittelt werden. Wenn es sich um ein langsames Netzwerk handelt, liegen Ihre Probleme außerhalb eines Kommunikationsprotokolls.
- 1. Android, Openfire, Smack, XMPP
- 2. xmpp mit Openfire-Client-Verbindung verloren plötzlich mit smack 4.1
- 3. Senden XMPP (Smack) Nachricht
- 4. Conversejs + Openfire + Smack Prebind Ausgabe
- 5. XMPP (Openfire) Push-Benachrichtigungen Android
- 6. Openfire reagiert nicht auf Smack login()
- 7. GCM XMPP Server mit Smack 4.1.0
- 8. Wiederverbindung zu xmpp Server mit Smack
- 9. XMPP "Stream: Fehler (Konflikt)" bei der Anmeldung mit (a) Smack
- 10. Load Vcards mit Smack (Android) in Openfire Server
- 11. Login kann nicht in Smack und Openfire funktionieren
- 12. Wie Offline-Nachricht Openfire XMPP abrufen?
- 13. OpenFire Server überprüfen Verbindung für XMPP
- 14. xmpp Openfire Push-Benachrichtigung und Protokollierung
- 15. XMPP Smack API RosterListener + Datenbank Änderung
- 16. Verbinden mit Openfire-Server mit XMPP in iOS
- 17. XMPP-Client mit Smack 4.1 geben NullPointerException während der Anmeldung
- 18. Android File Transfer funktioniert nicht über XMPP und OpenFire
- 19. wie openfire online registrierte Benutzer von Android-Client mit einem Smack?
- 20. Routing-Fehler zwischen Smack und Openfire auf localhost
- 21. Wie man Gruppenchat in der openfire (XMPP) mysql Datenbank speichert?
- 22. Konnte Anwesenheit von Dienstplan nicht erhalten, indem ich smack, openfire
- 23. Android: Feuer xmpp öffnen
- 24. Vergleich zwischen Tigase, Openfire und anderen Open-Source-XMPP-Servern
- 25. Openfire XMPP Komponente Namespace in getChildElement in Paket
- 26. Android Hintergrund Service für Smack (XMPP) Chat-Anwendung
- 27. Smack XMPP Fehler beim Erstellen neuer Benutzer: verboten - Auth
- 28. keine Verbindung zum xmpp-Server mit node-xmpp herstellen
- 29. Fehler beim Verbinden von MUC-Raum in XMPP (smack)
- 30. Ich bekomme kein SASL-Authentifizierungsproblem mit XMPP
Hallo Robin, Danke für die Antwort. Ich verstehe, dass es eine gewisse Latenz geben wird. Also hier ist mein Anwendungsfall. Die Nachrichtengröße ist sehr gering und beträgt nur jeweils 3 Zeichen. Im Grunde versuchen, etwas wie dieses Spiel http://www.youtube.com/watch?v=WRONDJO28mk "Draw Some Thing" zu entwickeln, senden die X- und Y-Koordinaten der Person, die Oberflächenwerte über den Server auf ein anderes Gerät überträgt, um aktualisiert und angezeigt zu werden Dort. Du bekommst den Fluss richtig ?! Kannst du mir dabei helfen? – Wesley
Draw Etwas funktioniert nicht in Echtzeit, es ist ein asynchrones Spiel. Ich habe etwas getan, das dem ähnlich ist, was du beschreibst (synchron, im Gegensatz zu Draw Something) und Latenz war kein Problem. Haben Sie das selbst getestet, um zu sehen, wie es funktioniert? – Marc
Danke Marc für die Antwort. Ja Freund, ich habe Smack mit Openfire zum Senden von Nachrichten getestet (im Grunde ein Chat wie App). Aber ich dachte, es wäre genauso, etwas in ein Spiel zu implementieren. Aber jetzt siehst du deine Antwort "Draw Something funktioniert nicht in Echtzeit, es ist ein asynchrones Spiel" - ich habe keine Ahnung, was ein asynchrones Spiel ist! kannst du mir bitte in einigen Zeigern oder Hinweisen helfen, etwas Ähnliches zu bauen, um etwas Funktionalität zu zeichnen, nach der ich suche? (S. - Ich habe es noch nicht als Spiel ausprobiert, aber ich wollte Klarheit schaffen) Bitte helfen Sie mir. – Wesley