Modele de courrier pour demande de lots

Ainsi, une méthode par lots, suivant cette réflexion devrait être: je me souviens d`un modèle mentionné dans le livre de Crane et Pascarello Ajax in action (un excellent livre, par la voie-fortement recommandé) dans lequel ils illustrent l`implémentation d`un type CommandQueue de l`objet dont le travail Il est de mettre en file d`attente des demandes en lots, puis les publier sur le serveur périodiquement. Je fais des appels WEB HTTP utilisant l`API de gmail. Y at-il un moyen de batch obtenir le contenu du message? Les demandes par lots sont toujours envoyées à l`aide de POST vers le point de terminaison/$batch. Lors de l`envoi de beaucoup de petites demandes au serveur, les frais généraux d`empaquetage, de transport et de décomposition des requêtes HTTP individuelles et des réponses peuvent être significatifs. Pour atténuer cette surcharge, nous avons d`abord essayé d`utiliser un protocole binaire basé sur les tampons de protocole de Google comme une alternative à HTTP. En dehors des inconvénients évidents (format propriétaire, difficile à déboguer, etc.) le protocole binaire n`était pas sensiblement plus rapide que l`homologue HTTP. Nous avons donc décidé de ne pas aller de l`avant avec un protocole binaire, mais offrir l`API batch à la place. Tout d`abord, vous construisez la demande de lot JSON pour l`exemple précédent. Dans ce scénario, les demandes individuelles ne sont pas interdépendantes de quelque manière et peuvent donc être placées dans la demande de lot dans n`importe quel ordre. Une seule requête HTTP est effectuée avec un paramètre batch et un pour un jeton. Ce document montre comment traiter les appels d`API ensemble pour réduire le nombre de connexions HTTP que votre client doit effectuer.

L`API gmail renvoie uniquement les messageIds d`abord pour empêcher la charge lourde. Avec ces identifiants, vous pouvez obtenir des messages complets individuels ou envoyer une demande de lot pour obtenir un tas de messages. Vous pouvez effectuer un POST sur le point de terminaison $batch pour l`un des deux contextes suivants: un modèle RESTful simple pour les lots consiste à utiliser une ressource de collection. Par exemple, pour supprimer plusieurs messages à la fois. Pour plus d`informations sur le format de demande/réponse de lot JSON, consultez la spécification du format OData JSON version 4,01, section 18. Notez que cette spécification est actuellement dans une version brouillon, mais ne devrait pas changer. Vous pouvez regrouper les appels d`API REST Outlook pour la même boîte aux lettres dans un lot. La boîte aux lettres peut être sur Office 365 ou Outlook.com. La tentative d`accès à plusieurs boîtes aux lettres dans un ensemble de requêtes par lot aboutit à une exception. Comme le graphique montre également, il n`est pas une bonne idée d`envoyer des demandes de lot qui ne contiennent qu`une seule opération. Dans ce cas, l`utilisation du traitement par lot ajoute même une légère surcharge par rapport aux valeurs de base.

Voici les barres oranges dans le tableau ci-dessus. Mais en commençant par une taille de lot de 2, les avantages kick in. Le serveur peut effectuer des opérations dans un lot dans n`importe quel ordre. Si vous devez effectuer des opérations dans un ordre spécifique, vous ne devez pas les placer dans la même demande de lot. Au lieu de cela, envoyez une opération par elle-même, attendez la réponse avant d`envoyer la suivante.

This entry was posted in Uncategorized. Bookmark the permalink.