0

すべての html をプレーンテキストの html ファイルに格納するか、データベースから html をロードする PHP ファイルに格納するかのほうが速いかどうか疑問に思っていました。

クライアントがページを要求する場合、データベースとの対話を必要とせずにすぐに送信されます。2 つの PHP がデータベースからデータをロードし、それらをオブジェクトに変換する必要がある場合、それは html ファイルに入力され、ホストに送り返されます。

最初のオプションが最速のオプションのようです。どちらの場合も、動的 HTML は PHP によって生成され、データベースを通じて読み込まれることに注意してください。

これをテストできるテスト環境を作成しています。私はこれを自分でテストし、結果が得られたらアップロードします。

As far as I know Joomla loads the entire HTML document from database. Now when I want to make a CMS myself I want my webpages to load fast. In my opinion Joomla sucks and so my question remains:

Which is faster plain html or stored html from database?

I see that my question is generating a lot of emotions. I will add some more value to my question.

  1. Am I testing this myself:"Yes of-course, I am not a lazy basted which is not prepared to seek for answers myself"
  2. Then why are you asking:"I am interested in you opinion. It would be stupid to think that I can find all the answers by myself. Also there are a lot of programmers with the experience to know this so why don't ask"
  3. いずれの場合も、HTML は CMS によって管理されます。アイデアは、cms が本当にハイブリッドな方法で高速でなければならないということです。したがって、小さなウェブサイトでも大きなウェブサイトでも、実際の動的コンテンツまたは数年間同じコンテンツを含むウェブサイトがある場合でも問題ありません。
  4. コメントの中で、パフォーマンスの問題がない、または小さすぎて数えられないという人がいることがわかります。私の質問は次のとおりです。
  5. キャッシング?わかりました、キャッシングについて見ていきます。

私はいくつかのテストを行いましたが、これが結果です。私にはそれらは奇妙に思われ、意味がわかりません。geensteil、tweakers.nl、stackoverflow (このページ)、google.com の Web ページを保存するために Google Chrome を使用しました。次に、chromes inspect-tools を使用してページを検査し、ネットワーク ボタンを使用して、何を読み込んでいるかを確認します。次に、HTML をコピーして mysql myisam に入れ、PHP でロードします。結果をExcelファイルに書き留めました。

これらは私のテスト結果です:

ここ

4

2 に答える 2

2

簡単に言うと:

データベース- サーバーとデータベース間のハンドシェークとスクリプト作成に時間がかかります。接続、クエリ、結果の返し、スクリプトを介したページへの結果のレンダリング。

一方

フラット ファイル- ファイルに直接アクセスしているため、既にページに埋め込まれているかのようになり、唯一の時間はコードを実行することになります。

ただし、非常に遅い、おそらく共有サーバーを使用していない限り、実際には違いに気付かないはずです。私の意見では、Joomla は非常に要求の厳しい CMS であり、いくつかのページを表示したいだけの場合はそれほど優れていません。簡単なものを探している場合は、いくつかのチュートリアルを読んで、自分でコーディングしてみてください。これで始められるはずです

  1. http://www.1stwebdesigner.com/tutorials/creating-your-own-cms-1/
  2. http://css-tricks.com/php-for-beginners-building-your-first-simple-cms/
于 2012-11-19T09:45:15.850 に答える
1

2 つの同一の HTML ファイル (1 つはファイルシステムから提供され、もう 1 つは DB から提供される) のページ読み込み時間を厳密に考慮すると、常に静的ファイルが最速です。

通常はApacheよりも高速なNginx、Varnishなどから提供できます。PHP のような追加のライブラリをロードする必要はありません。MySQL への接続のオーバーヘッドは必要なく、クエリ時間を待つ必要もありません。

*注意: Apache と mod_php を使用する PHP には、かなりのオーバーヘッドがあります。mod_php と APC の代わりに MySQL または接続プール、php-fpm への永続的な接続を使用すると、多くの場合に役立ちますが、静的ファイルを提供する速度にはまだほど遠いでしょう.*

ページの読み込み時間を本当に速くしたい場合。nginx + memcache ( http://wiki.nginx.org/HttpMemcachedModule ) を試してください。Nginx には、memcache から直接データを取得する機能があります。キーがURLであるmemcacheにhtml全体を入れます。nginx のセットアップ例を次に示します。

location / {
    if ($request_method = GET)
    {
                    set $memcached_key some_prefix:$request_uri;
                    memcached_pass  localhost:11211;
                    error_page 404 =200 @fallback;
    }

    default_type text/html;
    try_files $uri $uri/ /index.php$uri?$args;
}

location @fallback {
    try_files $uri $uri/ /index.php$uri?$args;
}
于 2012-11-19T10:23:50.330 に答える