Второй вариант. У меня все рефераты в файлах *.doc в zip-архивах. Может текст вытягивать прямо с этого файла? Но так может быть нагрузка на сервер еще больше. Ведь для этого нужно разархивировать файл, потом считать его. А если народу на сайте будет много...
Вобщем каким образом мне поступить? Как лучше всего будет для сервера?
Спустя 40 минут, 21 секунда (1.11.2009 - 11:37) stepan написал(а):
Я бы сделал вот как
Все файлы и архивы хранил на хосте, но названия файлов было бы id поля из базы данных.
В базе данных хранил бы название файла и краткую инфу про что данный реферат.
И получается человек заходит на сайт видит название, может прочитать краткое описание на этот реферат и если человеку надо он качает его, а по id вытягивать нужный тебе документ.
Так я думаю будет наиболее разумно.
Все файлы и архивы хранил на хосте, но названия файлов было бы id поля из базы данных.
В базе данных хранил бы название файла и краткую инфу про что данный реферат.
И получается человек заходит на сайт видит название, может прочитать краткое описание на этот реферат и если человеку надо он качает его, а по id вытягивать нужный тебе документ.
Так я думаю будет наиболее разумно.
Спустя 8 часов, 30 минут, 45 секунд (1.11.2009 - 20:08) kirik написал(а):
Угу, stepan дело говорит. Хотя если хочется чтобы онлайн тоже можно было читать, то тогда я бы хранил отдельно в doc файле и отдельно текст в БД. Тоесть получается избыточно, зато быстро

Спустя 1 час, 57 минут, 1 секунда (1.11.2009 - 22:05) FatCat написал(а):
Цитата (kirik @ 1.11.2009 - 21:08) |
и отдельно текст в БД |
Делал рассчет для другой ситуации, но тут много схожего, поэтому процитирую
Цитата |
- без тормозов с онлайном в 500+ юзеров на форуме + грубо говоря столько же на сайте (скорее всего джумла или битрикс, пока не ясно точно) [8<===] Celeron 2.40ГГц, 512Мб RAM |
Я не большой спец по серверам, но попробую посчитать в пределах моих познаний. Беру самое узкое место: запросы к БД.
У меня сейчас в среднем 25 юзеров одновременно на форуме: вечером до 50, ночью 3-5, днем 20-30. Примерно столько же гостей и поисковых ботов. Это дает до 3 000 000 просмотров страниц в месяц: в среднем 800 хитов в минуту, пик 2 500 хитов в минуту по серверной статистике. Умножаю на 15 (среднее число sql-запросов на генерацию 1 страницы), получаю 12 000 запросов в минуту в среднем, 62 500 запросов в минуту пиковой нагрузки.
У Вас планируется примерно в 40 раз больше. Умножаю мои цифры на 40.
480 000 запросов в минуту при средней нагрузке, и под полтора миллиона запросов в минуту при пиковой нагрузке.
Наверное не надо объяснять, что миллион обращений в минуту не выдержит ни один жесткий диск? Значит, ВСЯ БАЗА ДАННЫХ должна быть загружена в оперативную память, и сколько-то еще памяти надо оставить апачу, пхп и прочим сервисам...
По отзывам друга, держащего форум в тазике у себя дома, а посещаемость у него под 800 одновременных - у него отлично справляется целерон 1.7, а вот память приходится постоянно наращивать, причем для гиговой базы, как ни странно, требуется даже больше двух гигов оперативы...
Если посещаемость у Вас будет полтора посетителя в час - нет проблем, валите текст в БД.
Если рассчитываете на реальную посещаемость, храните ТОЛЬКО в файлах или копите деньги на дорогой хостинг.
Спустя 2 дня, 21 час, 25 минут, 9 секунд (4.11.2009 - 19:30) Dron19 написал(а):
БД от текста сильно не страдает, тем более чтобы бд БЫЛА С РАЗМЕРОМ ДО 1ГБ
это сказки, если конечно каждый Ваш реферат весит не более 64кб, если в пределах 50кб, то используйте поле MEDIUMTEXT

Спустя 1 минута, 4 секунды (4.11.2009 - 19:31) Dron19 написал(а):
Хотя конечно на скорость даже это значительно повлияет