0

Apache HttpClient を使ったスクレイピングサービスをクラウドに置きたいです。Google App Engine では、ネットワークへの直接アクセスとスレッドの作成が禁止されているため、問題が発生する可能性があることを読みました。他のクラウド ホスティング プロバイダーはどうですか? Apache HttpClient + クラウドを経験した人はいますか?

4

2 に答える 2

2

AppEngine には、スレッド直接ネットワーク アクセス(HTTP のみ) があります。HttpClient で動作させるための回避策があります。

また、多くの解析タスクを並行して使用する予定がある場合は、Task Queuemapreduceをチェックしてみてください。

ところで、GAE には、リクエストにカスタム User-agent ヘッダーを完全に設定できないという「ミス機能」があります。

于 2012-11-08T08:05:43.057 に答える
0

スレッドを作成し、CloudFoundry から他の Web サイトにアクセスすることは確かに可能です。各プロセスの時間制限があるだけです。たとえば、http://rack-scrape.cloudfoundry.com/を見ると、これは Google.com の「a」タグを検査する単純なラック アプリケーションです。

require 'rubygems'
require 'open-uri'
require 'hpricot'

run Proc.new { |env| 

  doc = Hpricot(open("http://www.google.com"))
  anchors = (doc/"a")

  [200, {"Content-Type" => "text/html"}, [anchors.inspect]]
}

Apache HttpClient に関しては、私はこれを経験したことがありませんが、もはや維持されていないことは理解しています。

于 2012-11-07T15:52:57.273 に答える