
[ホーム]
[最新エントリー]
[あすなろBLOG]
[あすなろNEXTBLOG]
[あすなろカウンセラーBLOG]
[インタビュー]
[スペシャルコンテンツ]
[テックスペース]
|
|
次へ |
大谷 弘喜
2008年01月11日
JavaのServletが登場した頃は,CGIに比べて速いと言う評判でした。CGIはプロセスとして起動しますが,プロセスを起動するのは比較的重い処理です。なので、スレッドで処理しちゃうJavaは速いと言うことです。でも今となっては,mod_perlやらmod_なんとかでJavaのサーブレットのようなスレッド処理できるものが存在するので,プロセス起動のオーバーヘッドはそれほど問題にならないのかもしれません。
Java本来の性能で言うと,C/C++などに比べて遅いです。JITを使えばネイティブコードより速いと言う宣伝もありますが,それは無視します(どれくらいの人が信じているんだろう?)。で,Perlとか,RubyとかPythonのような動的型言語に比べてどうなの?と言うと普通の思考力の持ち主なら,Javaの方が速いと考えます。そして,それは本当だと思います。ここまでが前置きです。
時々,会社の外に連れ出されますが,「言語は何を使っていますか?」と聞かれます。そんなことに興味があるって奇特だなー,と思いつつ,「Javaです」と答えます。そういう質問をする人の大体の反応は,「Javaだと遅いんじゃないの?CGIの方が速く動くんじゃないの?」。まあ,確かにTomcatの起動には時間がかかります。他の言語は詳しくないのでPythonにしぼると,Pythonの多くのフレームワークは数秒で起動します。Tomcatはそんなに速くないです。でも,素のサーブレットの動作は速いです。でも,僕も含めてJavaのWebアプリケーションって遅いなー,と言う印象があります。それは,Javaのフレームワークが重いからでしょう。その重さの理由は,どれくらい開発者の中にハッカー以外の人が混じっているのか,と言うことかもしれません。別の言い方をすれば,文化的な違いです。
でも,言語がどんなに変わっても,フレームワークが変わっても,重くなる処理は重くなる。
|
|
次へ |
|
|
[ホーム]
[ブログコンセプト]
[個人情報]
[著作権]
