2009-07-10 5 views
2

J'ai regardé http://code.google.com/appengine/docs/java/urlfetch/overview.html mais le code ne montre pas d'exemple de regroupement, je veux dire si je veux chercher www.example.com/1.html, www.example. com/3.html, www.example.com/3.html, ...., www.example.com/1000.htmlMoteur d'application Google - Utilisation du service de récupération d'URL

Je dois ouvrir 1000 connexions et fermer 1000 connexions. Je pense que je pourrais simplement ouvrir 1 connexion 'keep-alive', et émettre une requête 1000, puis la fermer. qui devrait être plus rapide. mais je ne sais pas comment faire en utilisant url.openStream()

Répondre

4

Le service URLFetch fonctionne à un niveau d'abstraction plus élevé que les connexions individuelles, et les bibliothèques Python et Java natives qui l'utilisent sont modifiées pour utiliser ce service. En tant que tel, vous n'avez aucun contrôle direct sur les connexions - mais vous pouvez vous attendre à ce que le service sous-jacent maintienne les connexions ouvertes lorsqu'il le juge approprié.

1

Malheureusement, comme the docs pour Java App Engine dire, à ce moment « L'API Java pour l'URL Fetch service prend en charge que les requêtes synchrones ». Le Python version d'App Engine prend en charge les requêtes asynchrones. Par conséquent, si le portage vers Python est tout simplement impensable, vous pouvez attendre dans l'espoir raisonnable qu'une telle fonctionnalité apparaisse également dans Java. Après tout, la version Python existe depuis un an de plus, donc bien sûr, c'est plus mature, stable et riche en fonctionnalités.

+0

Il ne parle pas spécifiquement des requêtes asynchrones, mais plutôt de la réutilisation d'une connexion pour plusieurs requêtes. –

Questions connexes