PHPがJSPより優れている点って何ですか。
■ このスレッドは過去ログ倉庫に格納されています
0001たけ
03/12/04 00:49ID:7VVPvP8aちょっと見たところ、そんなにJSPより利点があるようにも
見えないんだけど、誰か指摘して頂戴。
まあ、Perlよりは楽だろうけど。
0577nobodyさん
05/02/06 12:12:55ID:???0578nobodyさん
05/02/06 14:00:20ID:???0579nobodyさん
05/02/06 14:52:29ID:???0582nobodyさん
05/02/07 08:09:40ID:???いくら例出しても納得しないから、無駄だよ。
今までもさんざん例が出てきてるのに、無視だからな。
JALマイレージバンクもjspだし、リクナビもjsp。
0583nobodyさん
05/02/07 10:20:19ID:???適材適所の良い見本だ。
0584nobodyさん
05/02/07 19:36:47ID:???0585nobodyさん
05/02/08 02:15:19ID:???その代表のPukiWikiのサイトやら、各通販サイトやら、
サクサクなところが殆どないんだけど、どうしてなの?
xoopsも、公式サイトやら企業のサイトなど、でかいところは割に快適だが、
個人がレンタルサーバ匂い輝みたいな所は、概して重いんだよね…
phpって実は結構な規模のサーバスペックが要求されるんじゃないの?
0587nobodyさん
05/02/08 02:40:42ID:???0588nobodyさん
05/02/08 02:41:16ID:???キラーアプリが激遅なのが問題にされてるんじゃないのか?
それらはPHP技術者の中でも有能な人が開発してるんだろうし
0589nobodyさん
05/02/08 02:48:21ID:???http://javaballista.ddo.jp/kjwiki/kjwiki
JavaのWikiクローンだが、サクサクしてるな。
0590nobodyさん
05/02/08 02:50:55ID:WbzNwqmY現実を見るとJAVAで問題なく作られて、問題なく動いてるんだよね
単純ならば、JAVAよりスクリプトが速いなんてのもあったけど、
実際問題、そんなに単純な仕組みなんて、実務サイトでは要求されないし
DB叩くだけのアプリでベンチ取ったところで、実務とかけ離れたデータしか取れないでしょ
0591nobodyさん
05/02/08 02:50:56ID:???0593nobodyさん
05/02/08 02:52:18ID:???JavaのWikiってあんまり見た事無いな
0594nobodyさん
05/02/08 06:29:48ID:???0595nobodyさん
05/02/08 06:43:11ID:???1鯖何百ユーザーも入っている鯖で動いてるXoops
やWikiが、重いだ何だのとケチつけられちゃうからさ。
Javaでかかれたサイトは、専用鯖が当たり前。
そもそも比較するのがおかしいわ。
共有鯖で動いているPHP系WikiやXoppsと重さを比
べるなら、共有鯖で動いてるJava系WikiなりXoops
なりを持ち出さないと意味無いね。
0597nobodyさん
05/02/08 09:16:11ID:???0598nobodyさん
05/02/08 11:01:57ID:???0599nobodyさん
05/02/08 11:10:33ID:???共有鯖も多いよ
0601nobodyさん
05/02/08 18:35:57ID:???個人向けのプランでは対応してないところが多い上に、
国内では、規模がでかいところが多いから、専用サーバばかりに思えるだけで。
0603nobodyさん
05/02/08 22:21:51ID:???mbstringに対応してないレンタルサーバって、意外に多いんだよね…
0606nobodyさん
05/02/09 00:54:18ID:???国内でも対応してないところ結構あるよ。
RedHat7〜9を使ってるところが多い。
セキュリティアップデートで契約してるパッケージやさん(progenyとか)
のRPMで実現出来ない事が主な理由だそうだ。
BSDとかの鯖はたいてい対応してるね。
0607nobodyさん
05/02/09 00:55:56ID:???何時代の話ですか?
今時レンタルサーバ向けの商用コンパネにもTomcatのメニューがあったりするんだよ。
0609nobodyさん
05/02/09 01:31:46ID:???聞くところによると@serverも駄目らしい。
0610nobodyさん
05/02/09 01:34:40ID:hfz75OfT回避策はあるけど、サポート外とか断言してるしw
0611nobodyさん
05/02/09 01:51:53ID:???というか、国内業者は対応してるのがデフォという常識はどこから発生したのか不思議なんだが
俺も色々な業者を契約したが、注文付けるまでインストールされてなかったり、
変なバージョン入ってたりしたところはあったな
>>606の言うように赤帽全盛時代は、mbstringのバグの問題の時期とも相まってひどかった
あのころからやってる鯖屋は、対応しないと言うところもあるね
業者がみんなPHPに詳しくて、何が必要でどういう対応をすればよいのか理解している
というのは妄想だろう
ユーザや管理者にヘビーPHPユーザがいれば対応してる、
そうでなければそのまま使ってるって感じだろう
0612nobodyさん
05/02/09 01:58:54ID:/pcCSuwj0613nobodyさん
05/02/09 03:15:39ID:???0614nobodyさん
05/02/09 05:16:17ID:???また、どちらを習得したほうが良いでしょうか
私はjspを学ぼうと思っていたのですが
個人レベルで使える格安サーバでは対応していないところが多く
phpのほうが個人レベルでは利用しやすいのでは?
と思っています
0615nobodyさん
05/02/09 06:51:40ID:???いや、コントロールパネルのメニューの有無のことを言ってい
るのではないんだが。
Servletコンテナを共有サーバのサービスとして広く一般的に
提供するには、セキュリティの点、リソースの点で、まだまだ
課題があるってことだよ。
リソースの問題があるから、大勢のユーザーを詰め込むこ
とができなくて、サーバ屋は、価格設定を高めにしない限り、
利益が上がらない。
価格設定を高めにすると、個人はまず借りない。
企業の場合は、もう少し出費すれば、さくらの専用鯖が借り
られるくらいの価格設定の共有サーバを借りるくらいなら、
パフォーマンス、セキュリティともに問題ない専用サーバを
借りるだろう。
>>599の言うように、「共有鯖も多い」、のであれば、その事
例である、共有鯖で動いているサイトを挙げて欲しいね。
>>614
答えになっていないが、仕事で使うなら、どちらかに絞るの
ではなく、両方覚えたほうがいいのでは?
個人の趣味でやるなら気軽なPHPがいいんじゃないか?
運用環境も安上がりだしね。
0616nobodyさん
05/02/09 12:17:30ID:???ってか、結局使い分けで、個人がホームページにちょっとだけ何か作るにはPHPが向いてるんだから、安いレンサバはPHPでいいと思うよ。
価格的や環境的に使いやすくしたところで、ちょっとしたもの作るにはJavaが仕様として重過ぎるのは事実で。
そこは棲み分けで、張り合っても仕方ないと思う。
企業のシステム作るのにはJavaの方が向いているというだけだ。
0617nobodyさん
05/02/09 12:20:11ID:???未来のための勉強なら、Javaの方がいい。勉強できる範囲も広いし、応用も効く。
資料も多い。
勉強用の環境構築はJavaの方が楽だしね。
Java2SE5+NetBeansとかなら、インストールも楽だし。英語版だけど。
日本語版はそろそろかと。
0618nobodyさん
05/02/09 12:24:54ID:???0619nobodyさん
05/02/09 15:04:17ID:???となるとたいがい、phpかperlなわけで、javaは会社でしか使ってない。
という使い分けで、2つ使えればいいんじゃね。
おれはphpのが好きだけど、未来があるのはjavaだろうなぁ、どう考えても。
0620nobodyさん
05/02/09 19:48:52ID:???akiraネットで動いてるサイトは共有サーバだな
あそこはServletを使いたい人が契約するサーバ会社だ
セキュリティやリソース云々言ってるが、問題なく動いてるよ
0622nobodyさん
05/02/09 22:30:51ID:???アキラで実際にJava動かしてる奴がどれだけいるかだよ。
あそこは自宅サーバだから、まともな企業は借りないよ。
一日一回のTomcatのリロードを待たないと変更したサーブレットのクラスもリロードされないらしいし、使い勝手は悪そうだね。
アキラのスレを見ればわかるが、Javaの話題はほとんど出ない。
つまり、殆どの奴が実際に動かしていないと推測できる。
Javaの場合、どの程度のものを動かして、どれだけのアクセスがあるかで、パフォーマンスが変わってくる。
閑古鳥サイトがいくつもあったってパフォーマンスにさほど影響があるわけじゃないからな。
実際にアキラで動いているサイトをあげてくれ
ちなみに俺が見つけたのは↓だけだ
ttp://www.ikasa-fha.org/index.jsp
>>621
需要があってコンパネが搭載されていれば、他人のファイルが丸見えでもいいのか?
需要があるというのなら、実績もあるだろう。
実際に動いているサイトを(ry
0623nobodyさん
05/02/09 23:06:20ID:???そのかわりPHPは企業システム作るのに向いてないんだから、使い分けだろ。
0625nobodyさん
05/02/10 00:16:25ID:???自分の基準がすべてのネット弁慶な奴って見てて可哀想になる
0626nobodyさん
05/02/10 00:34:41ID:OOvNF0I4アキラが代表みたいな話になってるけど、yokoとかwillnetとかの方が
メジャーなような気がする。
日本は、素人みたいのが格安でやってるようなレンタルサーバ屋が、
雨後の竹の子のように林立してるので、Apache以外にサーバが必要な
Servlet
技術力がなけりゃ、サーバの運用が出来ないのは当たり前で、
PHPが使えるサーバが沢山あるのと、安定して運用されてるのは
また別の話だ。
アメリカのレンタルサーバでは、結構JAVA対応のサーバが多くて、
比較的安定して稼働してるよ。
0627nobodyさん
05/02/10 00:35:34ID:???正解
↓
Servletみたいなのはそういう管理者にとって敷居が高いんじゃないのかな?
0628nobodyさん
05/02/10 01:19:19ID:???0629nobodyさん
05/02/10 01:23:33ID:???PHPより優れてる点を教えて欲しいです。
携帯電話用のJAVAしか使った事ないんだけど、
イマイチ良い点が分からなかった。
俺みたいな厨はPHPで使い潰されるまで頑張ってろって事なのか。。
0630nobodyさん
05/02/10 01:26:56ID:???ドキュメントのあるライブラリの豊富さ。
開発環境の豊富さ。
実行環境の豊富さ。
ツールの豊富さ。
資料の豊富さ。
0631nobodyさん
05/02/10 01:28:27ID:???文法が同じと言うだけで、仕組みが全然違う。
規模が小さいのなら、どの言語で作っても同じだと思うよ。
JAVAが勝ってる点は、メンテナンス製や、安定性が大きいから、
CGI程度では違いがわからないかも。
JAVA派の人が反論してるのは、JAVAをレンタルサーバで動かすと
セキュリティや安定性に問題があるというのであって、別にPHPが
クソでJAVAが最高と言っているわけでもないので勘違いなさらないように。
0632nobodyさん
05/02/10 01:29:53ID:???0633nobodyさん
05/02/10 01:46:35ID:???レスサンクス!
>仕様の安定性。どこにも書いてないのに動きが変わるということは少ない。
>CGI程度では違いがわからないかも。
この2つに多いに納得、共感しますた。
ChangeLogを穴のあく程読めば書いてあるのかも知れないけど、
特にmutibyte系はこっそり変更加わってたりする気がする。
むしろ公式サイトよりMLでの常連のやり取りや紹介見てる方が把握出来る気がする。
0634nobodyさん
05/02/10 02:08:07ID:???高負荷の場合、JAVAは爆遅モードでも動き続けるが、PHPやPerlなら落ちるだろう。
まぁ、アクセス数が増えればどの言語でもクラスタリングは必須だが。
0635nobodyさん
05/02/10 02:19:20ID:???>セキュリティや安定性に問題があるというのであって、
レン鯖が非VPSの共有サーバなら、セキュリティ的に問題あるってことだよ
phpならsafe_modeやmod_becomeで安全性は保てるけど、Javaはそういう
仕組みないだろ?
だからServlet,Jspは共有鯖には向いていないってことだ
0636nobodyさん
05/02/10 02:23:13ID:???0637nobodyさん
05/02/10 02:24:57ID:???0639nobodyさん
05/02/10 02:26:17ID:???0640nobodyさん
05/02/10 02:27:51ID:???だからphpは共有鯖には向いていないってことだ
0641nobodyさん
05/02/10 02:33:49ID:???言語の特徴云々の比較には無意味だろう。
0642nobodyさん
05/02/10 02:45:20ID:???鯖会社がServlet,Jspでセキュリティを保つためには、高価なVPSを使ってサービスを提供
せざるを得ない時点で、Javaは共有鯖のサービスとして向いていないということだ。
ところで、PHPを擁護するとJava厨のまとまったレスがくるんだけど何か信者の団体でもあるの?
0645nobodyさん
05/02/10 04:57:23ID:???せっかく CやC++のお勉強から脱落した落ちこぼれのために
Javaという言語を生み出したのに、肝心のJava厨は他の言語を見下して
優越感に浸っているだけ(藁
Javaは殆どなんでもアリの優秀な言語なのに
無節操なJava厨がJavaの評判を悪くしている(藁。
0646nobodyさん
05/02/10 05:29:34ID:???0647nobodyさん
05/02/10 16:49:11ID:???JavaはPHPのようにマルチプロセスではなくてマルチスレッドだから、
複数のアプリケーションで1つのプロセスを共有するというヤバいことになる。
Sunもその辺の問題には気づいてて、J2SE5でマルチプロセスが使えるようになったので、
マルチプロセス対応のサーブレットコンテナが出るまで待ちませう。
0648nobodyさん
05/02/10 19:18:58ID:???0649nobodyさん
05/02/10 22:07:11ID:???PHPなんて割とセキュリティホールが発見されるのに。
仕組みの理論的な話ではなく、実際動かしてみてどうなのかで判断すべきだろう。
0650nobodyさん
05/02/10 23:41:22ID:???| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ j
彡、 |∪| | J
/ ∩ノ ⊃ ヽ
( \ / _ノ | |
.\ “ /__| |
\ /___ /
0651nobodyさん
05/02/10 23:58:18ID:???0652nobodyさん
05/02/11 00:06:04ID:???0653nobodyさん
05/02/11 01:15:40ID:???0655nobodyさん
05/02/11 17:21:51ID:???List list = new ArrayList();
for(;;) {
list.add(new Object());
}
というコードを実行してやれば、
全てのアプリケーションがOutOfMemotyError吐いて再起不能になるよ。
PHPの場合はこういうあほな事をするプロセスは時間がたてば
殺されるので、一時的に鯖の性能が低下しても再起不能になることはない。
JavaとPHPの問題というよりは、
マルチスレッドとマルチプロセスの特性の問題。
0656nobodyさん
05/02/11 17:35:38ID:???ちょっと複雑なサーブレットを作ると、ひどいことになる。
リクエストを処理する際の作業用のデータを、
クラス変数(PHPで言えばグローバル変数)に保持してたりする。
PHPではグローバル変数といっても意図しない限りはリクエストごとに隔てられてるから
害はないんだけど、Javaの場合は複数のリクエストがメモリ空間を共有するから
危険なことになる。
この手の問題は、高負荷をかけてテストしないと表ざたにならないので、
実際はかなりのJavaアプリケーションが危険なまま放置されてそうな気がする。
サーブレットコンテナベンダーは、そんな危険性があることなんて
口が裂けても言わないけどな。
でも、当のSunはいずれ問題になると気づいていたから、
J2SE5でマルチプロセス対応したわけだ。
0657nobodyさん
05/02/11 18:31:43ID:???マルチスレッドとマルチプロセスの特性なんか関係ないと思うが。
タイムアウトがあるかないかだろ。
ところで
<?
ignore_user_abort(true);
for(;;){
$a[] = "aaa";
}
?>
というコードも、時間がたてば殺されるわけ?
0658nobodyさん
05/02/11 18:53:26ID:???PHPの場合は確実に殺されるよ。
マルチスレッドとマルチプロセスの特性は大いに関係ある。
第一、Javaのスレッドはタイムアウトがあったとしても、
無限ループに陥ったコードを確実に停止させる手段がない。
嘘だと思うならSunのjava.lang.Thread辺りのドキュメントを読んでみればいい。
それにひきかえ、PHPのプロセスは無限ループに陥っても確実に停止できる。
メモリ空間、ストリームなど各種リソースを綺麗さっぱりクリアできるからね。
Javaのスレッドは他のスレッドとリソースを共有するので、そうはいかない。
だから素人にJavaを使いこなすのは難しいわけよ。
0660nobodyさん
05/02/11 19:10:27ID:???> だから素人にJavaを使いこなすのは難しいわけよ。
PHPだって素人が「使いこなす」のは難しいね。
うまく動いてないコードが他に影響を及ぼすというのは、Javaの守備範囲のアプリケーションの場合そもそも問題外だ。
うまく動きながら他に影響を及ぼす場合は、PHPでは動くコード書くのにコツが必要だったりするし。
0661nobodyさん
05/02/11 19:16:24ID:???ローカルでテストしてからアップするもんだ。
昔は独自CGIなんかでも、鯖屋が確認してからアップさせる所が多かった。
0662nobodyさん
05/02/11 19:45:17ID:???釣りだと思うけど、php.iniでタイムアウトの時間を長く設定するか、
タイムアウトしないようにすればよいだけの話。
>>660
PHPなら馬鹿がプログラムを書いても、
プログラムがまともに動かない程度の問題で済むけど、
Javaの場合はいとも簡単に鯖が吹っ飛ぶ。
ダメな奴は何をやってもダメなのは当たり前で、
これは共有鯖でのセキュリティの問題の話ね。
PHPは元々Web専用に開発された言語なので、
そういう点でJavaより優れているのは当たり前の話。
JavaはむしろWeb以外の面が強いよ。
データベースエンジンやメールサーバーも
100%Javaでカバーできる。
なおかつ、ユーザーがデータベースエンジンや
メールサーバーの機能を拡張することもできる。
全体を再コンパイルすることなしにね。
何か機能を追加する度に再コンパイルのPHPでは、
こういう芸当はできないでしょ。
Web専門のドカタプログラマには無縁かもしれないけど。
0663nobodyさん
05/02/11 19:53:32ID:???じゃあ落ちるだろ。
0664nobodyさん
05/02/11 19:58:30ID:???まず、ウェブアプリケーションでタイムアウトしないように
設定するわけがないよね?
永久にユーザーがレスポンスを待つことなんてあり得ないから。
タイムアウトしないように設定するとすれば
PHPのコマンドラインアプリケーションなので、
実行した人がおかしいと思えばkillコマンドで止めればよいだけの話。
Javaだってそうでしょ。
0665nobodyさん
05/02/11 20:03:52ID:???タイムアウトを設定しなければ、
JavaでもPHPでも止まらない。
PHPの場合はタイムアウトを設定すれば
タイムアウトする保証があるけど、
Javaの場合は確実にタイムアウトする保証がない。
分かった?
0666nobodyさん
05/02/11 20:06:48ID:???0668nobodyさん
05/02/11 20:18:16ID:???あとマルチタスクに対応しても、それぞれのプロセスが異なるユーザー権限で動かないと、
他のユーザーのファイルを自由に改ざんできたりする問題をクリアできないと思うんだけど、
この辺の問題は解決されるのだろうか。
0670nobodyさん
05/02/11 20:56:06ID:???うん、スレッド=タスクのつもりで話をしてた。
プロセスとかスレッドとかタスクという用語は
OSによって微妙に意味が変わるので、
ここではあくまでJavaVMでの話のことね。
BeOSなんかじゃスレッド=タスクだったりするけど、
そういうマイナーなOSの話は置いといて。
スレッドはjava.lang.Threadに対応する処理の流れのこと、
プロセスは、少なくともJ2SE1.4の時点ではJavaVM自体のこと。
多分J2SE1.6では1つのJavaVMの中に仮想的に複数のJavaVMを起動することで
マルチプロセスを実現するという話だった気がする。
0671nobodyさん
05/02/11 20:58:26ID:???0672nobodyさん
05/02/11 21:01:42ID:???> JavaはむしろWeb以外の面が強いよ。
共有で信頼できない素人と同じ環境で動かすんじゃなければ、WebでもJavaの方が強いよ。
0673nobodyさん
05/02/11 21:03:32ID:???> 釣りだと思うけど、php.iniでタイムアウトの時間を長く設定するか、
> タイムアウトしないようにすればよいだけの話。
ということは、長い処理を行うことができるサーバーで素人が一緒に動したら怖いってことね。
0676nobodyさん
05/02/11 21:15:34ID:???鯖缶にいちいちコンパイルを依頼しなくても、
ユーザーのlibディレクトリにjarを放り込めば
新しい機能が自由に使えるというのはあるな。
■ このスレッドは過去ログ倉庫に格納されています