У меня есть видео-сайт, работающий на VPS под Apache2, который скоро начнет платить за просмотр. Пока он не начнет приносить приличный доход, я не хочу вкладывать средства в дополнительные серверы, поэтому для начала мне нужно предоставить достаточно хороший сервис для клиентов, которых я получаю.
Я также размещаю несколько других веб-сайтов, но не ожидается, что они будут использовать большую пропускную способность.
Я знаю, что моим основным узким местом является пропускная способность, поэтому я думаю, что лучше всего предотвратить доступ к видео-сайту для новых подключений, как только мой предел пропускной способности приблизится. Это не должно касаться любого, кто уже смотрит фильм.
Есть идеи, как лучше всего этого добиться?
Обновление: ограничение пропускной способности - это не пропускная способность, выделенная мне поставщиком, а скорее доступная пропускная способность для моего VPS через сетевую карту. Я обнаружил, что после 250 одновременных загрузок все начинает ухудшаться. Предполагая, что каждая загрузка составляет 1 Мбит / с, я хочу начать регулировать скорость, как только я достигну 250 Мбит / с - теоретически я могу получить 1000 Мбит / с, но похоже, что это не работает.
Вы также можете попробовать посмотреть на mod_bandwidth, который может определять ограничения пропускной способности на уровне сервера или для каждого соединения. Это не предотвращает дальнейших подключений, так как это может быть достигнуто с помощью MaxClients
директива.
Поскольку я предполагаю, что вы используете mpm_worker, было бы интересно, какие ваши настройки для ThreadsPerChild
являются.
mod_bandwidth ограничения могут быть основаны на
Мой подход заключался бы в ограничении одновременных подключений через MaxClients
директива к 250
. Вместо использования mod_bandwidth я бы удостоверился, что каждый клиент получает «справедливую долю» полосы пропускания, а не монополизм на полосу пропускания.
Не могли бы вы предоставить нам дополнительную информацию, например.
ОС сервера, выделенная вами пропускная способность, ваши уровни программирования и т. Д.
Вы рассматривали CDN?
Рассматривали ли вы размещение своего «веб-сайта» в стандартном пакете хостинга, а затем использование VPS для обслуживания файлов? Так ваш сайт всегда будет доступен.
Большинство провайдеров VPS и облачных сервисов предоставляют полноценные API, где вы можете увидеть, сколько BW было использовано и т. Д. Также как вы обслуживаете свои файлы? Это через код на стороне сервера?
В противном случае все, что я могу предложить, это либо этот ответ, либо CDN.