OpenPNE その6 ..
[2ch|▼Menu]
468:nobodyさん
12/08/19 21:11:27.79 .net
>>467
いや、そういうことじゃない。
結局のところSNSのようなアプリは何で書いたって重くなる。
アプリが重量級というよりも使われ方が重量級

どんなに高性能のマシンを用意したって、1000人、1万人が同時にそのマシンに
アクセスしたら高性能マシンは1/1000、1/10000の能力になってしまう。

まず第一にボトルネックはどこか。これは大抵ディスクにある。
つまりディスクを使わせないようにしないとダメ。
ディスクは、メモリの速度よりも【10万倍〜100万倍】遅い といえばその重要性が理解できるかな?

まず簡単な対処法として、アプリとデータベースを分ける。2台構成。簡単な負荷分散になる。
アプリサーバーは高速なCPUを搭載して、データベースサーバーには高速なディスクを搭載する。

次に、メモリを大量にのせたサーバーを用意する。用意できなければアプリサーバーが
兼用してもいい。そしてディスクにアクセスしないようにキャッシュさせる。

そのあとはアプリサーバーの能力が不足していて、一台のマシンスペックで追いつかなくなったら
アプリサーバーを複数台用意、ロードバランサーを設置して負荷分散を行う。

データベースサーバーの能力が不足している場合、垂直分割、水平分割を行う。
つまり機能毎に別のサーバーに振り分けたり、ユーザーごとに別のサーバーに振り分けたりする。


こんなこと、レンタルサーバーでは出来ないって? 当たり前、レンタルサーバーってのは
つまり安いサーバーだろ。安い金でSNSをやろうってのが間違い。

(このレスに言語の話が全く出てないことに注意)

結局のところディスクがボトルネックだから、それを使わなくしたり
分散しない限りなんの言語で書いても解決しない。


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

950日前に更新/125 KB
担当:undef