Publié par Freelance Gontineac
Le HTTP-Polling c'est en fait ton objet 'in-sl' qui vient requèter le serveur de façon régulière ou évenementielle afin de voir si les données qui l'interesse sont a jour, un peu comme quand tu verifies ta boite aux lettres tous les midis pour voir si il y a du courrier.
Quand a xml-rpc c'est peu fiable et quelquefois tres lent... 
Dans le cas de SL c'est exact le SL le HTTP-Polling s'effectue dans le sens Client
Serveur pour une raison simple c'est que les connexions ne sont que "sortantes" SL vers le monde externe (llHTTPRequest) la réponse se faisant par http_response().
Pour ta question en faisant simple 
Ce qui est dit:
L SL receives XML-RPC requests and passes them to the prim specified. It may not establish this connection, but it may reply and keep two-way communication with that server. These responses seem to be able to transport the largest amount of data out of Second Life (vs. Email and HTTP Requests).
Ce qui a première vue est "allechant" mais...
The current implementation of XML-RPC only allows ONE request to be queued on the front-end server (xmlrpc.secondlife.com) at a time. Any additional requests to the same data channel overwrite any pending one. This has serious ramifications for the design of XML-RPC communications where the in-world object could receive requests faster than it can respond to them. In addition, the 3-second delay in llRemoteDataReply exacerbates this problem even more.
l'est moins 
Mais
The observed issue is this: if you send multiple quick requests to an in-world object via XML-RPC, one which is scripted to perform some processing and then return a response (via llRemoteDataReply), there is a potential for earlier requests to get lost on the front end server (they still should generate remote_data events, though), and have the response meant for an earlier request end up being passed back to a later one, while the earlier requests will time out back at your external application.
As a result, if you intend to do any serious work with XML-RPC, y ou will have to design your external client application to manually serialize all requests to each individual RPC channel. That means you have to wait for a response from the previous request before you attempt to send the next one. If you don't care about receiving responses, then this problem is not an issue, as all requests seem to get passed on to the script, regardless of the queueing issue.
Ce qui me semble normal si on programme de façon sérieuse compte tenu des
avertissements mentionnés par LL...
Concernant ta question de "Deprecated" elle me fait sourire... aucun risque que LL l'enlève pour des tonnes de bonne raisons...
ce qui est confirmé par LL dans un thread de
Kelly Linden
Linden Developer
rpc is not quite depricated. We still support it and want to know about any stability, performance or bug issues found with it. It is important to include the following in any report
.....
llHR requests are handled entirely from the host the region is on. There is no central service and the requests themselves are very light weight. There is no dependence on any other service, central or otherwise, besides general network connectivity
We expect XML-RPC to work and will continue to work to support it. However, it is better to use llHTTPRequest whenever possible as it will be more reliable and offer better performance going forward.
Ce qu'oublie de mentionner LL (comme dab quand ils ne sont pas très clair) que qu'un point fort de rpc est qu'il autorise les connexions entrantes Monde externe --> SL...
J'éspère avoir été complet.
Comme l'a dit Freelance Gontineac rpc est fragile et le delai de 3 secondes (mini) peut être un problème.
|