Quercus は Java 環境における PHP の代替として有効ですか?
質問
この質問に遭遇した、何も分からない人のために コナラ それは Java で行われる PHP の実装です。
私が現在取り組んでいるプロジェクトでは、サーブレットを介して CGI を介して PHP ページを提供しています (不格好であることは承知していますが、これはレガシー コードをサポートするための要件です)。Quercus プロジェクトを発見したときは、私たちのプロジェクトをより純粋な Java 環境に移行するための有望な道のように思えたので、とても興奮しました。
Quercus についていくつか質問があります。
- 出荷製品で Quercus を使用したことがありますか?
- php API はどの程度サポートされていますか?
- これを使って作業する上で苦労した点は何ですか?
- Jetty を使用して動作させることができましたか?Jetty と連携していることを聞いたことがありますか?(理解できませんでした)
解決
私はワードプレスでそれをテストしてみたパフォーマンスはWordPressのインストールデフォルトでは、正規のApache / PHPの下にあったものをほぼ倍増しました。これはまだその素晴らしいではありません。
私たちは、コナラはPHPのカールのコマンドをサポートしていながら、それはすべてのカールオプションをサポートしていないという通知をしました。だから、自動プラグインのダウンロードは動作しませんでした。それはあなたが常にプラグインをダウンロードして、それらを手動でインストールすることができ、契約の大きくはありませんでした。しかし、これは我々がうまくいく他に何を知らなかったので、赤い旗でした。また、FacebookのPHPライブラリは、右(最も可能性が高い)動作しません意味しました。
あなたは、データベース接続と呼び出しの多くを行う場合は、データベース接続プールが使用されますので、、あなたはその領域で大きなパフォーマンスの向上を確認する必要があります。
あなたがコードを書いている場合は、、私はそれは非常に現実的な選択肢だと言うでしょう。 PHPの十分なあなたが動作しない何かを見つけた場合、あなたはサポートされている別のPHPコマンドを使用するか、または単にJavaコマンドを使用することができることをサポートされています。
他のヒント
私はコナラを評価少し仕事を行なったし、それは有望に見えたが、それはsymfonyに基づいていたとsymfonyの反射性質は良くコナラによって処理されなかったとして、私が働いていたプロジェクトでは動作しませんでした。
私はそれを扱うオープンソースのPHPプロジェクトの数を取得しようとすると、それはかなり完全なPHP5ベースのAPIを有することが判明しました。
あなたはそれが桟橋で作業を得ることができる必要があります。私はそれがTomcatのと協力を得ることができました。
あなたは本当にJavaアプリケーションにおけるJSPの代替として考えることができます。 JSPはあなたがJavaコードにJSPをコンパイルしたいだけのように、JavaコードにPHPをコンパイルすることでどのように働くかの方法は、それは類似点が働くます。
私は桟橋と一緒に行くの大きな欠点は、PHPコードをプリコンパイルすることができないだろうと考えています。
は、JavaとPHPを混合されていない場合でも、かなりの数の利点は、しかし、があります。あなたは2を混合している場合は、さらに多くの利点があります。
<開発者が使用する管理方法についてのリンクを参照してくださいのhref =「http://www.webdigi.co.uk/blog/2009/run-php-on-the-google-app-engine/」のrel = "nofollowをnoreferrer">コナラGoogle App Engineのの
上でPHPを実行します注:PHPが正式GAEでサポートされていないが、コナラで、あなたが今、これを実行することができます。
PHPのパフォーマンスはコナラのプロ版で良いだろう。 JavaバイトコードとしてPHPコードをコンパイルし、プロのバージョンので。だから、それは速くなります。
しかし、 HTTPで述べたように、オープンソース版はまだPHPインタプリタを使用している://en.wikipediaを。 ORG /ウィキ/ Resin_Serverする
オープンsoruce版にはパフォーマンス向上のアップは行われませんようです。
さて、私は任意のPHP 5.xのサポートをgaranteeません。
しかし、なぜあなたもそのような二重のオーバーヘッドを持ちたいでしょうか?あなたも、PHPからJavaを実行できます。)