0

PHP+js+mysql で書かれた大きなアプリケーションがありました。私たちの上司の何人かは (彼らは開発者ではないので大きな間違いを犯しました)、このアプリケーションを開発会社から書き直すためにアウトソーシングすることにしました。彼らは Zend Framework+ Doctrine でアプリケーションを書き直し、モジュールのロードに 1 秒かかっていた古いアプリケーションが 4 秒かかっていた場合、非常に遅いアプリケーションを返してくれました。

これまで、これを高速化することは不可能でした。キャッシュ サーバーをアクティブにし、アプリケーションを Linux に移行し、可能な限りすべてをキャッシュしましたが、それでも非常に低速です。

zend フレームワークと doctrin2 で記述されたこのアプリケーションを最適化して高速化する方法をすべての開発者が経験する必要があります (doctrine を削除することはできず、既にキャッシュ システムを実装しています)。ヒント、トリック、アイデア、アンサーは大歓迎です。

4

2 に答える 2

1

すべての Web サイト アプリケーションで、この firebug のプラグインを使用してコードを最適化すると、パフォーマンスが大幅に向上します。

Yahoo Yslow プラグイン

Google PageSpeed プラグイン

そこには、ページの表記と、最速のアプリケーションを改善するためのリストがあります。

その後、 Doctrine2 の場合、いくつかの小さなリクエストに fetchArray() を使用できます (グローバル、ユーザーは fetchAll() を使用します)。fetchArray は配列のみを返し、 fetchAll はリクエストにリンクされたすべてのオブジェクトを返すという理由だけで、リクエストの場合、FetchArray は fetchAll よりも高速です... (多くの場合、配列で十分です)。

お役に立てれば幸いです。

于 2012-07-26T09:49:42.967 に答える
1

他の PHP アプリケーションと同じです:

  • 開発マシンで Xdebug を有効にし、プロファイリングを行ってボトルネックがどこにあるかを確認します。
  • MySQL スロー クエリ ログを有効にして、クエリを改善できるかどうかを確認します

DB プロファイリング機能をZend_Db調べて、アプリが不要なクエリを実行していないか、必要以上のデータを読み込んでいるかどうかを確認することもできます。

于 2012-07-26T09:29:46.510 に答える