質問: 12因子のアプリケーション宣言はどのようにPHPプロジェクトに適用されますか? 私は、 12因子のアプリケーションを読んでいます。これは、Webベースで適用するためのかなり包括的なルールのようです応用。例ではPythonやレールを使用していますが、決してphpはありません...私は、宣言の*要因*がPHPプロジェクトにどのように適用できるのか ありがとう
回答: **このPOSTを参考にしないでください。これは2011年に書かれましたが、それ以降は多くのことが変更されています...プログラミングの世界は絶え間なく進化しています。 2011年の見通しは、2018年に引き続き有効です。** 私はちょうど各点のいくつかの行を読んで、ここで私の文書の分析に行く: 1. **コードベース**:小さなプロジェクトでも誰でも、PHPでもコードベースでもコードベースを持つ必要があります。 2. **Dependecies** :PHPは、コードをサーバーに単純にコピーするだけで簡単に移植できるインクルードとコードライブラリを使用します。場合によってはPEARを使用し、サーバーがそれをサポートしていない場合は、手動でpearをコピーしてインストールする必要があります。私はほとんどの場合Zend Frameworkを使用しているので、ftpのアップロードでフレームワークのコードをコピーするだけです。 3. **設定**:PHPアプリケーションに設定を保存する書き込み可能な設定ファイルがあるのが一般的です。保存場所は開発者の選択ですが、通常はアプリのルートまたはsettings/configフォルダにあります。 4. **バッキングサービス**:PHPはMySQLなどのバックアップサービスをほとんど使用しています。あなたのアプリに依存する他の一般的なサービスは、TwitterやFacebookです。あなたは彼らのAPIを使って彼らと通信し、作業するためのデータを格納/取得します。 5. **ビルド、リリース、実行**:PHPの場合とは異なるコンパイル済みコードに適用されます。だから、この点はあなたが見る必要があるものではありません。 6. **プロセス**:HTTPはステートレスでサービスされているため、通常はWebサーバーとは別にプロセスがありません。これは完全に真実ではありません.Webサービスは、あなたがパッケージングしたり作成したりするアプリケーションとバンドルされている可能性があります。しかし、標準のために、通常、ウェブ世界でプロセスを使用する必要はありません。 7. **ポートバインディング**:PHPはポートバインディングにはまったく適用されません。なぜなら、Apache、NGinx、Lighttpdがアドレスにフックするプロセスではないからです。 #6/7を読むと、ウェブサイトが12ファクタのアプリにならないことを理解できます。 8. **同時実行性**:この点は、PHP Webページには適用されないプロセスについても扱います。この点はコンテンツを提供するサーバーに当てはまります。 9. **使い捨て**:この段階では、プロセスの速さについて説明します。明らかに、プロセスではないPHP Webサイトは適用されるべきではありませんが、常にあなたのウェブサイトはできるだけ早くページを実行する必要があることに注意してください...このブロックまたはコードブロックについて常に考えて、最適化されているかどうかを確認してください。 > 10. **開発/プロダクトパリティ**:この点は、どのアプリケーション開発においても重要です。 2つのアプリケーションバージョンの間に大きなギャップがあることを決して望んでいない、またはアップグレードが面倒になることがあります。さらに、クライアント固有のバージョンのアプリを決して作成しないでください。 テンプレートレベルでアプリケーションを設定/カスタマイズできるようにする方法を常に見つけてください。 14. **ログ**:ログは常に良いことですが、画面に出力することなくコードの処理を続けることができます。私のお気に入りの戦術は、Linuxコンソールの中で "tail -f logfile"を実行して、自分のコードを実行しているときに何が起きているのか見てみましょう。 15. **管理プロセス**:PHPではプロセスはありませんが、ユーザー名とパスワードで保護できるページがあります。 >