2010-09-14 11 views
1

Récemment, j'ai rencontré une erreur (assez fréquemment) avec le RemoteApiServlet ainsi que le gestionnaire remote_api.Google App Engine RemoteApiServlet/remote_api erreurs de gestionnaire

Tout chargement en vrac de grandes quantités de données à l'aide du chargeur en vrac, je commence à voir HTTP aléatoire 500 erreurs, avec les détails suivants (dans le fichier journal):

Request was aborted after waiting too long to attempt to service your request. 
This may happen sporadically when the App Engine serving cluster is under 
unexpectedly high or uneven load. If you see this message frequently, please 
contact the App Engine team. 

Quelqu'un peut-il expliquer ce que je pourrais faire faux? Ces erreurs empêchent Bulk Loader de télécharger des données plus loin, et je dois tout recommencer.

fil dans Google App Related forums moteur est à http://groups.google.com/group/google-appengine-python/browse_thread/thread/bee08a70d9fd89cd

Répondre

1

Ce n'est pas spécifique à remote_api. Ce qui se passe, c'est que votre application reçoit beaucoup de demandes qui prennent beaucoup de temps à s'exécuter, et App Engine n'augmentera pas le nombre d'instances sur lesquelles votre application s'exécute si la latence de la demande est trop élevée. Par conséquent, les demandes sont mises en file d'attente jusqu'à ce qu'un gestionnaire soit disponible pour les servir. Si aucun n'est disponible, un 500 est renvoyé et ce message est consigné.

Réduisez simplement la vitesse à laquelle vous chargez des données ou réduisez la taille du lot afin que les demandes remote_api s'exécutent plus rapidement.

+0

Pourriez-vous élaborer sur le seuil de latence pour lequel App Engine peut évoluer en fonction du nombre de requêtes sur un gestionnaire? – Rahul

+0

Il est actuellement environ 700 millisecondes temps d'horloge. –