Dimanych

Рейтинг
155
Регистрация
05.06.2007

Сейчас RAID1, скоро будет RAID10, что конечно увеличит кол-во соединений раза в 2, но этого мало. Для nginx нашёл только output_buffers, который должен помочь, попробую покрутить.

Смотря на чём должен быть скрипт, например bash скрипт checker можно такой сделать:


#!/bin/bash

while true; do
OK=`ping -c1 domain.ru|grep "time="`;
if [ "$OK" = "" ]; then
echo "SERVER is offline" | mail -s "NO PING" "your@mail.ru"
fi
sleep 600;
done

запустить

./checker &

Будет проверять каждые 10 мин доступность сервера и отправлять мыло если не доступен.

Конечно если сервак будет лежать долго, надо понимать что каждые 10 мин будет приходить письмо, но при желании можно увеличивать время ожидания динамически :)

Это будет не надёжным решением отслеживать постоянно лог, будут не точные данные и путаница.

Встречал ещё вариант считывать через tcpdump все заголовки на предмет GET запросов и сохранять подключения, далее можно анализировать активные подключения nginx например так:

lsof -n -p 30391|grep TCP

(вот бы туда привязать URI пути и было бы достаточно)

Нужна поминутная сборка активных подключений. Я так понимаю тут мне поможет только написание модуля. Интересно на сколько это сложная задача, пока не приходилось разбиратсья с написанием модулей.

[umka], Верно, нужно периодически получать список активных подключенных клиентов, нужны данные: IP-клиента и domain.ru/uri к которому он подключился. На даже таких данных можно понять сколько клиентов на данный момент выкачивают тот или иной контент.

Подобную информацию выдаёт модуль nginx-rtmp-module, но мне нужно для http, а не для rtmp.

В nginx plus ответили что такое есть только в платной версии и скорее всего альтернативных бесплатных модулей нет в сети. Очень жаль, платную версию я уж точно не потяну. Но если кто-то где-то встречал вывод подключений аля mod_status апача, буду рад любой ссылке.

alexeyymanikin, ну тут респект конечно за такую реализацию.

Возможно решусь доработать свою систему до аналогичной вашей, вирусы всё злее нынче.

У меня есть пару вопросов, если можно ответьте:

1. Вы писали что проблем было много, я также их много решил, вопрос о проблемах именно по большому кол-ву пользователей в линюкс, были какие либо проблемы или всё дефолтно и нормально? У меня подозрение что начнут тупить useradd / usermod / userdel, смена группы и другие утилиты.

2. Даже при случае как у меня, если отдельный пользователь аккаунта и отдельный на php, мы получаем проблемы доступа главного пользователя к файлам созданным php, вы как то решали данную проблему или обошли её? Или может у вас есть функция сброс прав на основные для таких случаев? (т.е. к примеру главный пользователь не может менять файлы созданные PHP пользователем)

Зарание благодарю.

Я конечно многое видел, но такая статистика для шаред хостинга излишняя.

Тут правильно говорят, проблему надо решать в корне, а не показывать на сколько она серьезная. Такая статистика для самого хостера может и полезна, но вот для клиента это намёк на то что хостер не очень. Наверняка если у сервера значительно больше ресурсов, отказов по сессиям почти не будет.

Спасибо за информацию.

Примерно также реализовывал в своей системе, тоже на базе itk, но меня остановило создание unix-юзверя для каждого домена, поэтому ограничился созданием отдельного www пользователя на аккаунт. Конечно это не даёт той межсайтовой защиты о которой мы говорим, но всё таки это лучше чем работа всего аккаунта от одного пользователя.

Т.е. у вас там тысячи unix пользователей и это не вызывает никаких проблем?

alexeyymanikin:

пс. по поводу ссылки - предлагаю сделать проще, на следующей недели постараюсь подробно описать на форуме как это работает у нас в системе.

Где именно вы опишите вашу систему?

Вторая неделя пошла, но пока не нашёл где оно описано, как собственно и ссылок никаких не дождались...

Действительно, open_basedir теперь можно менять везде, но практика показывает что вирусня пока не догадывается до отмены open_basedir и заражается обычно только тот сайт который дырявый, возможно ей этого достаточно. Лучше всего не использовать всякие дырявые системы, вовремя обновлять CMS, ну и на крайний случай действительно раскидывать по аккаунтам где уже будет 100%я изоляции.

PS> Про систему изоляции бегета хотелось бы тоже почитать, а пока не понятно о чём там речь.

Всего: 830