Помогите оптимизировать сервак

12 3
FFFFx029A
На сайте с 01.09.2007
Offline
142
7000

Есть сайтик http://2onlinetv.com

При одновременном заходе в 100-150 чел., сервак выдает Internal Server Error(

Вчера сделал самопальное кеширование, принцип такой: каждому запросу создаеться уникальное имя и это сохраняецо в файл, ну а при повторном таком запросе - все грузитцо не с БД, а уже с файла...

Темнеменее повысилась развечто скорость загрузки страниц (заметно), но при заходе 100-150 чел. одновременно, выдает снова Internal Server Error..

Запросы к базе были, но все простые, графики на сайте минимум, глючного бегуна и сапы нет...

Может есть у когонить какието соображения? :confused:

Отключил фтп там и какогото демана, почту рубить неохото.., даже логи отрубил, остальное вроде нужное т.к named, smtp, pop, htpd

Конфиг выделенного сервера:

100 000 MB диску

Необм. доменів ***

Необм. трафік*

2 IP адреси

1024 MB RAM**

2048 MB RAM (максимально)

Пропорційний розподіл CPU**

CPU 2xAMD Opteron 248

Панель управління:

Plesk чи cPanel/WHM

ЗЫ: это самый мощнявый VPS у них 95$/мес.(hostpro.ua)

http://www.youtube.com/watch?v=Gyl4E4EcPdc (http://www.youtube.com/watch?v=Gyl4E4EcPdc) - партнёрка от Мавроди и МММ))) http://miniwm.ru/soft.php?read=917 (http://miniwm.ru/soft.php?read=917) CMS MiniWM v2.8 - 49.99$
[Удален]
#1

смотри в сторону настройки параметров апача


#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 200

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5

#
# Server-pool size regulation. Rather than making you guess how many
# server processes you need, Apache dynamically adapts to the load it
# sees --- that is, it tries to maintain enough server processes to
# handle the current load, plus a few spare servers to handle transient
# load spikes (e.g., multiple simultaneous requests from a single
# Netscape browser).
#
# It does this by periodically checking how many servers are waiting
# for a request. If there are fewer than MinSpareServers, it creates
# a new spare. If there are more than MaxSpareServers, some of the
# spares die off. The default values are probably OK for most sites.
#
MinSpareServers 3
MaxSpareServers 10

#
# Number of servers to start initially --- should be a reasonable ballpark
# figure.
#
StartServers 3

#
# Limit on total number of servers running, i.e., limit on the number
# of clients who can simultaneously connect --- if this limit is ever
# reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW.
# It is intended mainly as a brake to keep a runaway server from taking
# the system with it as it spirals down...
#
MaxClients 25
#
# MaxRequestsPerChild: the number of requests each child process is
# allowed to process before the child dies. The child will exit so
# as to avoid problems after prolonged use when Apache (and maybe the
# libraries it uses) leak memory or other resources. On most systems, this
# isn't really needed, but a few (such as Solaris) do have notable leaks
# in the libraries. For these platforms, set to something like 10000
# or so; a setting of 0 means unlimited.
#
# NOTE: This value does not include keepalive requests after the initial
# request per connection. For example, if a child process handles
# an initial request and 10 subsequent "keptalive" requests, it
# would only count as 1 request towards this limit.
#
MaxRequestsPerChild 10000

этих

Посчитай, хватит ли памяти. Чтобы твои нагрузки обслуживать, примерное такое нужно

MaxKeepAliveRequests 500
KeepAliveTimeout 5
MinSpareServers 20
MaxSpareServers 150
StartServers 10
MaxClients 170
MaxRequestsPerChild 10000
[Удален]
#2

Если не сложно, где вы этот скрипт взяли...

FFFFx029A
На сайте с 01.09.2007
Offline
142
#3

MOP1 Поставил те настройки что ты дал, буду смотреть...

FFFFx029A добавил 15.10.2008 в 18:16

SearchMaster:
Если не сложно, где вы этот скрипт взяли...

Сам написал, чесноговоря лишнего там нет, все самое нужное..)

Если про структуру базы то:

1. таблица с инфо страницами (те что сверху)

2. таблица с категориями

3. таблица с каналами

4. таблица с странами

5. таблица с плеерами (при выводе списка каналов, запрос на тип плеера 1 и заганяецо в массив)

Да, и забыл добавить, посещаемость 8к-10к и выше, соотношение 9.5-13 страниц на чел. (ща упало до 9.5-10.5)

[Удален]
#4

А где каналы брали?

FFFFx029A
На сайте с 01.09.2007
Offline
142
#5
SearchMaster:
А где каналы брали?

guzei.com, webtelek.com, и еще куча тому подобных...

[Удален]
#6

Тоисть, вещание я так понимаю идет не через ваш сервер... а просто парсится с guzei.com, webtelek.com, и еще куча тому подобных...

FFFFx029A
На сайте с 01.09.2007
Offline
142
#7

MOP1, вот статистика http://top.bigmir.net/report/16782682/, ща 110 чел и сайт еще невылетел))) Кстате, если раньше грузился моментом, то ща 2 сек. думает, но зато невлитает... Чемто напоминает форум.сёрч по скорости и типу загрузки страниц..

FFFFx029A добавил 15.10.2008 в 18:28

SearchMaster:
Тоисть, вещание я так понимаю идет не через ваш сервер... а просто парсится с guzei.com, webtelek.com, и еще куча тому подобных...

А откуда такая любознательность? И с чего ты взял что парситца? Серваки на потоковое видео стоят у телекомпаний восновном, а такие сайты как guzei.com, webtelek.com и.т.п - просто ставят у себя чтото вроде <embed><object=media file=mms://12.23.42.23/rtr></embed>

FFFFx029A добавил 15.10.2008 в 18:35

MOP1:
смотри в сторону настройки параметров апача



этих


Посчитай, хватит ли памяти. Чтобы твои нагрузки обслуживать, примерное такое нужно

А что означают эти строчки?:

MinSpareServers 20
MaxSpareServers 150
StartServers 10

😕

[Удален]
#8
MaxKeepAliveRequests 500
KeepAliveTimeout 5
MinSpareServers 20
MaxSpareServers 150
StartServers 10
MaxClients 170
MaxRequestsPerChild 10000

вы бы посчитали сначала расход памяти...

к примеру вы поставили сейчас настройки, при которых сервер одновременно сможет обслуживать до 170 клиентов (MaxClients 170). если каждый процесс апача требует, к примеру, 10 МБ памяти, то у вас должно быть 170* 10 = 1700 МБ свободной памяти, чтобы гарантировано все работало без ошибки.

MinSpareServers 20 - минимум 20 процессов будет запущенно и ожидать нового клиента

MaxSpareServers 150 - если 150 процессов ожидает клиента, 151 принудительно завершится или не создастся

StartServers 10 - апач стртует и сразу создает 10 процессов

MaxRequestsPerChild 10000 - каждый процесс обслужит 10000 запросов перед тем, как завершиться

MaxKeepAliveRequests 500 - при постоянном соединении сервер обработает 150 запросов и закроет соединение

KeepAliveTimeout 5 - при постоянном соединении сервер ждет 5 секунд после последнего запроса и завршает соединение

но лучше читайте доки на http://apache.org/

FFFFx029A
На сайте с 01.09.2007
Offline
142
#9
MOP1:
вы бы посчитали сначала расход памяти...

к примеру вы поставили сейчас настройки, при которых сервер одновременно сможет обслуживать до 170 клиентов (MaxClients 170). если каждый процесс апача требует, к примеру, 10 МБ памяти, то у вас должно быть 170* 10 = 1700 МБ свободной памяти, чтобы гарантировано все работало без ошибки.
MinSpareServers 20 - минимум 20 процессов будет запущенно и ожидать нового клиента
MaxSpareServers 150 - если 150 процессов ожидает клиента, 151 принудительно завершится или не создастся
StartServers 10 - апач стртует и сразу создает 10 процессов
MaxRequestsPerChild 10000 - каждый процесс обслужит 10000 запросов перед тем, как завершиться
MaxKeepAliveRequests 500 - при постоянном соединении сервер обработает 150 запросов и закроет соединение
KeepAliveTimeout 5 - при постоянном соединении сервер ждет 5 секунд после последнего запроса и завршает соединение

но лучше читайте доки на http://apache.org/

Неплохобы узнать сколько реально хавает каждый процесс апача)

[Удален]
#10

по SSH подключитесь, под рутом войдите, команду top введите, колонку RES посмотрите :)

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий