1

化学産業向けの Web アプリケーションを構築しています。基本的には化学構造のデータベースを検索します。多くの化学情報計算が必要であり、それを実行するための Java で書かれたオープン ソース ソリューションが多数あります。

現在、プログラミング言語を何にするか悩んでいます。Java でいくつかの関数を使用する必要がありますが、システム全体を Java で記述したくありません。Java で Web アプリケーションを記述することに慣れていないためです。

そのため、必要な機能を備えた .jar ファイルをいくつか準備し、コマンドラインから PHP で使用するという考えがあります。このソリューションのスケーラビリティについて疑問に思います。

たとえば、PHPで.jarファイルを1サイクルで1000回呼び出すのは高速ですか? .jar に渡されるパラメータの長さは? パラメータとして文字列に変換された大きな配列を想定しています。これが一般的に良いアイデアなのかどうか疑問に思っています。なぜこれをやらないのですか?

アイデアありがとうございます。

4

3 に答える 3

3

いいえ、効率的ではありません。JVM の 1000 個のコピーを実行することになります。さらに、これらの jvm の起動/シャットダウンのオーバーヘッド。Tomcat などの適切な Java サーバーを使用する方がよいでしょう。

于 2012-09-26T14:07:46.303 に答える
1

それはできる

パラメータについて言及しています。コマンドラインパラメーターを意味すると思います。おそらくスケーラブルではありません。代わりに、入力には stdin を、出力には stdout を使用してください。

jarファイルを1000回呼び出すことに言及しています。jarファイルのメインメソッドを呼び出すことを意味していると思います。これは非常に遅くなります。代わりに、できる限り Java で実装するため、リクエストごとに数回 jar ファイルを開始します。少数の呼び出しは許容される可能性があります。ループには何もありません。

基本的には、Java 内のリクエスト全体のすべてのデータを準備し、php から読み取った stdout に出力します。

もちろん、jsp とサーブレットを学習する時間があれば、サーブレット コンテナーで実行する方が高速です。

于 2012-09-26T14:28:32.440 に答える
0

あなたがこれに疑問を呈するのは正しい。おそらく遅いことは別として、PHP と Java を混在させることはおそらく賢明な考えではありません。100% PHP または 100% Java のいずれかを使用する必要がありますが、両方を混在させることはできません。どちらもあなたのニーズを満たすことができると思いますので、問題をもっとよく研究したほうがよいと思います。

Javaはバックエンドとフロントエンドの両方をかなり広範囲に処理し、オンラインで利用できるサポートとライブラリがたくさんあるので、個人的にはJavaをお勧めします. PHP に固執したい場合は、それも可能だと思いますが、コードを適切に構造化することに注意する必要があります。そうしないと、Web アプリケーションが簡単に複雑になる危険があります。

ただし、これらのオプションのどちらもあなたがたどりたい道ではないと仮定すると 、パラメーターサイズの制限は、何よりもまずオペレーティングシステムの制限になると思います。ただし、これらの数値に達している可能性があると思われる場合は、おそらくファイルに書き込み、これらの jar をそこから読み取ることを検討する必要があります。

于 2012-09-26T14:11:03.900 に答える