質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • PHP

    24037questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • サーバ

    881questions

    サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

  • phpMyAdmin

    805questions

    phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

  • CPU

    52questions

  • 負荷分散

    20questions

    負荷分散とは、並列に運用されている機器間でできる限り負担が均等になるように、処理を分散し割り当てることです。 負荷分散は専用機器の使用、DNSサーバの設定、サーバに負荷分散ソフトウェアを導入することで実現できます。

サイト作成における動的ページ、静的ページの両者のサーバーに対する負荷の違い。仮に将来の莫大なアクセスがあったとしてやはり静的コンテンツ主流の方がレンタルサーバー、サーバー負荷には優しいのか?

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 178

gugupoo

score 12

サーバーをレンタルして動的サイト、静的サイトでかかる負荷の違いを
どれくらい意識した方が良いか、という点をお教え頂きたいです。
(私が現在考えているいる作成サイトでphpMyAdminに入っているデータを
出してきてサイトに表示させるWordプレスサイト、とします。)

現在当方が作成したいウェブサイト、ブログサイトが
一応動的サイトでも静的サイトでもどちらでも作成は可能であるが
出来たら動的サイトとして作成したい、としたとします。
ただ、仮にサイトが将来非常に大きくなったとした時に
静的サイトの方がサーバーに優しい、ダウンなども少ない、などとなると
静的サイトを積極的に作成したいわけではないが
静的なコンテンツが多いほうが無難であったとしたら
少し不満ではあるが、動的コンテンツの多いサイトはあきらめて
ほぼ静的な要素が多いページを作成する、など
これからのサイト作成にあたっての注意点などを知りたいと思っています。

例えばなのですが、Aサイト、Bサイトの2つのサイトがあったとします。

■A
phpMyAdminの30個のテーブルから7行づつ2カラム分のデータをSELECTしてきて1記事を表示するブログサイト。

■B
phpMyAdminの5個のテーブルから1カラム5行のデータをSELECTしてきて1記事を表示するブログサイト。

・AとBでサーバーにかかる負荷は差はないと思って良いのなら、Aサイト方針でサイトを作成していきたいと思います。
・Aは作成したいが、将来大量アクセスがサーバーにかかるほど成長して、サーバーダウンや、色々な心配を考えたら
Aがサイト構成的にも望ましいには変わりないが、Bサイト案でサイト構築を進める方が得策かもしれなく、
・しかし多くのレンタルサーバー会社では転送量などにともなったサーバーのプランがあったりして
マシンのCPUやメモリ?が増えるとAサイト案でも割合大量アクセスに耐えることができる可能性もあるかもしれない
・そういった意味でサーバープランのCPUやメモリも大切であるのかどうか?具体的にはどの数値を主に見た方が良いかなどはあるのか。
・上記A案のように、大量のテーブルから出してくるようなものは負荷がかかりすぎるが、少量なら良い、とか
具体的な指標はありますでしょうか。
・いっそのこと動的ページは大量アクセス時はやばいので作成はあきらめたほうが絶対に良いと言われたら、計画もスムーズに立てやすいのですが、諦めるべきかどうかの判断基準を持ててない現在の自分、といった具合です…。

上記をまとめまして主に、ページ作成の動的静的コンテンツの割合に対するアドバイスや、レンタルサーバーでは転送量以外にもこういった数値(CPU)などは心配したほうがよい、
などのアドバイスが頂けたら有難いです。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • mts10806

    2019/05/16 15:21

    WordPressに限定するのであれば「WordPress」をタグに追加しておいてください。

    キャンセル

  • gugupoo

    2019/05/16 15:33

    mts10806様
    有難うございます。
    ページ全般に関するテーマといった趣旨でサイトを限定するつもりはなかったのですが、
    実際レンタルして、ワードプレスの機会が多く想定されるので
    タグを追加させて頂きました!

    キャンセル

  • gugupoo

    2019/05/16 15:47

    mts10806様
    WordPress限定ではなく動的ページ全般の事と再度考えまして、
    タグは外して元に修正した形で現在質問継続とさせて頂きました。
    あやふやな態度で申し訳ありません;

    キャンセル

  • mts10806

    2019/05/16 15:59

    了解です。あくまで「限定するのであれば」という前提があるかどうかの話ですので。
    また、そのあたり、わかりやすく質問内容調整いただけたらと。

    キャンセル

回答 2

checkベストアンサー

+2

「phpMyAdminに入っているデータを出してくる」=動的サイト
「ページ表示時にPHP等のサーバーサイド言語不要(HTML+CSS+Javascriptだけで出来ている)」=静的サイト
として書きます。

まずは「静的サイトジェネレーター」で検索するといいかもしれません。

例えば静的サイトにしよう!と思った場合でも
「各記事ページのサイドメニューに新着記事一覧と人気記事一覧を表示したいな」という場合、
上記のようなジェネレーターや、それに類する何らかのツールや、「DBは使用しないPHP」などで一部分だけ動的にする等しないと、プログラム的な負荷は低くても運用的にやっていられないと思います。
(なぜなら手動でこのリストを作り、全ページに反映させないといけないことになるから)


動的サイトの場合。

・AとBのどちらが負荷が掛かるかは、DB設計とSELECT文次第です。
普通に考えればAの方が負荷高そうだなーと思いますが、「インデックスや正規化がバッチリ効いててSELECT文がスマートなA」と「インデックス無し、重いSELECT文使いまくりのB」ならAの方が勝るかもしれません。

・負荷が掛かった時に落ちるのはAもBも同じです。そして静的サイトでも同様です。
但し(負荷をA>Bとすると)Aなら同時アクセス1000で落ち、Bなら2000で落ち、静的ページなら3000で落ちる、みたいな違いは発生し得ます。(値は適当)

・サーバーの性能が高ければある程度高負荷でも耐えられる可能性はあります。
ただその分お値段が高くなりますし、通常時は無駄になります。
これは一般企業でも悩むところなので、「サーバー スケールアップ スケールアウト」とかで調べたり、各種サーバー会社を見比べてみてください。
ちなみにレンタルサーバーでも同様の機能(設定をオンにした期間は落ちにくくなる)がある所もあります。

・「転送量」と「サーバー性能」は別です。
転送量は文字通り転送されるデータ量のことなので、たとえ静的サイトでも「巨大な画像たくさん」みたいな場合はガンガン消費していくでしょう。
サーバー性能はデータの処理速度、つまり前述のような「DBから目的のデータを引っ張って来て、それを適切な形に直す」みたいな処理の速さです。(ざっくり言えば)
この辺は「サーバーとは」「パソコン(CPU・メモリ)とは」みたいな話になるので、適宜調べてください。

・そもそもプログラムにおいて、扱うデータ量は少なければ少ない方がいいです。
そういう意味ではA案は宜しくない可能性が高いですが、「どうしてもそうする必要がある」ならば致し方ないので、出来るだけ負荷が減るような工夫を入れていく話になります。
逆に扱うデータが少量でも場合によっては負荷は上がります。
今はDBの話だけをしていますが、PHP側の処理負荷もありますので、「扱うテーブル数が少ないに越したことはないが、それだけが問題ではない」、何よりも「要件と設計と実装次第」が答えになるかと。


・結論
静的サイトでいいのなら、そうするに越したことは無いです(通常時でも「低負荷=高速」なので)。
「静的サイトにできない(機能的に動的でなければ実現不可能、静的にすると運用負荷がヤバイ等)」場合、それを諦めるか、出来るだけ負荷の低い動的サイトにするかを決めるのは質問主さん次第になります。

あとは処理量、通常時どれぐらいの閲覧数が予想されるのか、「大量アクセス」がどれぐらいの頻度で発生すると予想されるのか、サーバーを落としたらヤバイ度合い、などによって適切なサーバーを決めてください。
(逆を言えば、それらが分からないと選定のしようがありません。個人やちょっとした会社のブログ程度なら「とりあえず好評そうな所を選んで、人気が出て来たらもっと強い所に引っ越せばいいや」という考え方もありでしょう)

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/05/16 16:38

    >sakura_hana様
    有難うございます!
    データベース、設計、処理、負荷など様々な用語に対するイメージができた思いがします。詳しくお教頂いて大変に有難うございました!

    >とりあえず好評そうな所を選んで、人気が出て来たらもっと強い所に引っ越せばいいや
    実際これも有意義な、今私が取れる行動で踏み出しやすい実際の方法の一つとして納得できました。

    ここから派生させて、
    例えば同様のライバルのサイトをいくつか見て回って、
    それらに比べて特段多すぎず、
    つまり想像上ですが、ライバルサイトと比較してデータベースからあまりにも多くデータをとってきそうな物の作成はやめる、ですとか

    逆にOKと思って作成してみたが
    将来アクセスが大きく伸びた時にサーバーがダウンした
    →都度、想像できる範囲を修正したり負荷を減らしてみようと行動してみたり
    逆にサーバーの性能を高いものを申し込んだり
    その都度調整をしていく、
    それができないと運営はできないと改めて心がけてみることができました。

    具体的に、この処理でこのアクセスのここで、このレンタルサーバーは
    落ちてしまうor大丈夫、 など
    見えにくい都度面倒さも伴う作業なので
    ある程度大丈夫な路線を自分で攻めつつも
    大丈夫じゃなかった場合に修正していく
    粘り強さと柔軟さが必要なのかな、と言い聞かせてみました。
    有難うございました!

    キャンセル

+1

(私が現在考えているいる作成サイトでphpMyAdminに入っているデータを
出してきてサイトに表示させるWordプレスサイト、とします。)

WordPressを使う時点で、それは動的なサイトです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/05/16 15:28

    通常、「静的なサイト」は、「事前にHTMLをすべて作っておいて、あとは完全に出すだけ」のようなものを指します。サーバサイドで少しでも動的な処理が入っていれば、それは「動的なサイト」です。

    キャンセル

  • 2019/05/16 15:34

    そして、「WordPress」を選択した段階で、データベースへのアクセスはWordPressの仕組みに依存することになります。それが気に入らないのであれば、WordPressを捨てたほうが適当かと思います。

    キャンセル

  • 2019/05/16 15:35

    改めて間違った部分を認識しまして、動的なものと静的なものとの違いを理解致しました。
    有難うございました!

    キャンセル

  • 2019/05/16 15:45

    maisumakun様
    再度考えまして、WordPress限定ではなくお話を進めさせて頂きたく思いましたので、
    選択を再度外しました。

    キャンセル

  • 2019/05/16 15:49

    > 例えばなのですが、Aサイト、Bサイトの2つのサイトがあったとします。

    Aのような作り方をするメリットはどのようなものがありますでしょうか?(特になければBの1択になってしまいます)

    キャンセル

  • 2019/05/16 16:23

    Aで例えばニュースサイトなどを作ったとします。
    あれこれ文章を自分の意見を書いて、
    ページ内にphpmyadminから関連ニュース、などで色々サイトを装飾するためのニュースへのリンクを作成したり、
    おすすめ情報、などを貼ったとします。

    関連情報やおすすめニュース、などはその都度、
    例えば7行
    投稿としてリンクを作成して、
    関連情報として貼ってしまえば
    静的ページの出来上がりです。

    しかしページに貼るのではなく、
    phpで、関連ニュースの部分を変数で都度生成すれば
    リアルタイムで更新されますので、

    この2者はそもそも内容が違うと言えば違いますが
    前者はその時のニュースの関連ページも含めたページとなり
    後者は今のニュースが回る、と。
    本当は後者のサイトが作りたいが
    でも妥協して後者をあきらめるしかなくなればサイト作成全体はあきらめず
    前者でもニュースサイトは作れる、として前者の選択はとる、と
    あくまでサーバー負荷など大丈夫でOKサインがでるなら後者にしたい、というものです。

    キャンセル

  • 2019/05/16 16:25

    答えはもう出ていますよね?

    「あくまでサーバー負荷など大丈夫でOKサインがでるなら後者にしたい」

    あとは機能性・負荷・リアルタイム性・作る手間などのバランスを見て、何が良いか判断するだけの話です。

    キャンセル

  • 2019/05/16 16:30

    有難うございます。
    自分の目的も改めて徐々に見えてきました。
    どこを重視して、気を付けて進めていくか、考えてしっかりやっていくよう指標ができたと思います。
    有難うございました!

    キャンセル

同じタグがついた質問を見る

  • PHP

    24037questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • サーバ

    881questions

    サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

  • phpMyAdmin

    805questions

    phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

  • CPU

    52questions

  • 負荷分散

    20questions

    負荷分散とは、並列に運用されている機器間でできる限り負担が均等になるように、処理を分散し割り当てることです。 負荷分散は専用機器の使用、DNSサーバの設定、サーバに負荷分散ソフトウェアを導入することで実現できます。

  • トップ
  • PHPに関する質問
  • サイト作成における動的ページ、静的ページの両者のサーバーに対する負荷の違い。仮に将来の莫大なアクセスがあったとしてやはり静的コンテンツ主流の方がレンタルサーバー、サーバー負荷には優しいのか?