[Seasar-user:14974] Re: バッチAPでマルチスレッドを使用したい
Junichi Kato
[E-MAIL ADDRESS DELETED]
2008年 7月 9日 (水) 12:13:24 JST
加藤(j5ik2o)です.
反応できるところだけインラインで書きますw
2008/07/09 11:09 もんきち <[E-MAIL ADDRESS DELETED]>:
> 現在Seasar2.4+S2DAO+JDK5+PostgreSQL8.3でバッチAPを作成しているのですが、下記要件を
> 満たすためマルチスレッドで動作するAPにしたいと考えてます。
>
> 1. あらかじめDBにURLを登録する。
> 2. バッチ起動時にURLを格納したテーブルを参照して、当該URLに3.の処理を実行する。
> 3. JakartaCommonを使用してHTTP GETを行いHTMLを取得する。取得したデータはDBに格納する。
要はウェブサイトを巡回してHTMLを取得するクローラを実装したいということでしょうか?
>
> できれば2.、3.の処理をスレッド化して処理したいのです。極端な事言えば登録されているURL
> の数だけスレッドを起動して、並列処理できればと考えてます。
CPUが処理できる数以上スレッドを作っても効率はよくなりません.スレッドプールを使うとよいです.
このあたりを参考にされてくださいw
http://d.hatena.ne.jp/j5ik2o/20070308/1173379783
ということで,concurrentパッケージのExecutorを使われることをお勧めします.
--
/**
* name : Junichi Kato
* email : [E-MAIL ADDRESS DELETED]
*
* blog : http://d.hatena.ne.jp/j5ik2o/
*
* commiting projects :
* http://jiemamy.org/
* http://s2chronos.sandbox.seasar.org/
* http://s2config.sandbox.seasar.org/
*/
Seasar-user メーリングリストの案内