PHPでシェルコマンドを使用してdocファイルをpdfに変換しています。各ユーザーはいつでもファイルを PHP に変換できます。複数のユーザーが同時に私のコンバーターにアクセスしてファイルを変換することは可能ですか?
専用サーバーでCENTOSを使用しています。
PHPでシェルコマンドを使用してdocファイルをpdfに変換しています。各ユーザーはいつでもファイルを PHP に変換できます。複数のユーザーが同時に私のコンバーターにアクセスしてファイルを変換することは可能ですか?
専用サーバーでCENTOSを使用しています。
PHP 変換ユーティリティの可能性のある層を定義しましょう。
terminal # user enters commands here, sees output
shell # the terminal automatically starts a shell process
# so users can type commands and get work done
/path/to/your/conversion/tool.php doc1.doc doc1.pdf
# here is the user, accessing your script.
# one solution to conversions is to allow for 1 input and 1 ouput file
# I have done that to keep things simple, your solution may be different
phpcode shell("externalconverter", "doc1.doc","doc1.pdf", "/path/to/tmpWrkSpace"?)
# again, a guess, your php is asking to execute a external command
# and we're passing the arguments
"externalconverter" "doc1.doc" "doc1.pdf" tmp="/path/to/tmpWrkSpace"
# again, a guess
したがって、あなたまたは exteranlconverter が静的な (または一意でない) 名前で一時ファイルを作成するかどうかによって異なります。つまり、2 人のユーザーが異なるファイル名で同時にプログラムを起動した場合、まったく同じ名前の一時ファイルが作成されますか? おそらくそうではありませんが、そのようなことが起こり、事前に確認する価値があります.
安全であることを確認するには、2 つのターミナル ウィンドウでテストをセットアップし、このテスト用に特別に作成された .doc ファイルを使用して事前に両方のコマンドを入力します。できるだけ)。両方のファイルが同時に処理されていることが確実であることを確認するには、処理に時間がかかるのに十分な大きさの (またはいずれにせよ) ファイルが必要です。
一般に、Linux/Unix OS を想定すると、ほとんどのプログラムで複数のコピーを同時に実行できます。しかし、テストは最善の防御です。
これで質問の答えが得られない場合は、上記のアウトラインを使用して質問を編集し、変換ツールの要素の階層を表示することを検討してください。
IHTH。