- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Failed requests: 368
Это плохо. Ну а man siege полностью осилишь? Взять access.log и долбиться не на одну страничку - на точно так как делают клиенты.
Убедитесь, что запросы от siege не идут мимо вашего "кеша".
Посмотрел в логах почему 368 Failed - там размер у них на 1 байт отличается.
Т.е. запрос не отвалился, сервер не возвратил 4** или 5** статус, а что?
Между чем и чем "размер отличается", поясните пожалуйста?
Сервер сейчас под нагрузкой. По статистике LiveInternet >5000 online. Проблемы были вчера когда онлайн было >25000.
Ну так сделайте 25тыс, в чем конкретно проблема?
Это плохо. Ну а man siege полностью осилишь? Взять access.log и долбиться не на одну страничку - на точно так как делают клиенты.
Попробую, только похоже по хорошему предварительно надо будет мне брать второй сервер, переносить туда сайт, а потом уже играться с этим.
Если файл "кэша" отсутствует, то php скрипт выполнится полностью и создаст этот файл. Если бы дело было в "кэше", то в server-status висели бы процессы соответствующих скриптов. Это бы нельзя было не заметить.
Между чем и чем "размер отличается", поясните пожалуйста?
Начинаю сомневаться в вашей компетентности. Если внимательно посмотреть то что я написал, то там видно Document Length: 21841 bytes. Отличие на 1 байт - это 21840 или 21842.
25 тысяч онлайн по статистике liveinternet это не 25 тысяч запросов в секунду. Как я уже писал, server-status апача сообщал о примерно 100-110 запросах в секунду. Запуск ab с параметром -c 100 даёт (по server-status) порядка 1000 запросов в секунду (сюда же входят запросы реальных пользователей).
Если файл "кэша" отсутствует, то php скрипт выполнится полностью и создаст этот файл. Если бы дело было в "кэше", то в server-status висели бы процессы соответствующих скриптов. Это бы нельзя было не заметить.
Учитывая тенденцию "велосипедистов" быть, мягко говоря, малоквалифицированными программистами - пока не исключаю здесь проблемы. Например, что будет если запросов пришло несколько, а файла кеша еще нет?
Если внимательно посмотреть то что я написал, то там видно Document Length: 21841 bytes. Отличие на 1 байт - это 21840 или 21842.
Отличите между *чем* и *чем*. Тем что скрипт пишет в заголовке и реальным размером вывода. Тогда это проблема. Учитывая что такая порнография у вас в 20% запросов - стоило бы исправить.
25 тысяч онлайн по статистике liveinternet это не 25 тысяч запросов в секунду.
И что?
Запуск ab с параметром -c 100 даёт (по server-status) порядка 500 запросов в секунду (сюда же входят запросы реальных пользователей).
Таки не осилил ман? Нет никакой реальной проблемы воспроизвести посещаемость по статистике LI. Лучше, конечно, использовать siege - раз о нем слышали...
Учитывая тенденцию "велосипедистов" быть, мягко говоря, малоквалифицированными программистами - пока не исключаю здесь проблемы. Например, что будет если запросов пришло несколько, а файла кеша еще нет?
Не скрою, программист я такой же как администратор. Но учиться никогда не поздно :)
Если приходит запрос а файла кэша нет, то скрипт создаёт временный файл со случайным именем и пишет в него результат работы (т.е. весь html файл), а в конце делается rename("временное_имя_файла","постоянное_имя_файла"). Не могу утверждать, но как мне кажется это достаточно надежный способ. Даже если будет одновременно несколько обращений к несуществующему кэшу, то проблем быть не должно - максимум это файл кэша несколько раз перезапишется.
Основная масса ответов по 21841 байт, но некоторые ответы в логах апача (с кодом 200) - 21840 или 21842. Почему - хороший вопрос. Буду думать. Но как это могло повлиять на мою проблему - пока не вижу связи.
Не может ли быть проблема быть связана с более низким уровнем? Например, со стеком tcp/ip? Там для меня пока совсем темный лес. Раньше где-то натыкался на интересные посты про оптимизацию серверов под большие нагрузки (правда под фряхой, а у меня debian) - так там какие-то изменения на уровне ядра предлагали делать. Сейчас правда ничего найти не могу :(
Как минимум три варианта
1. Глюк в коде. Наиболее реальный.
2. Легкий ддос на статику. У воркеров nginx кончились коннекты.
3. Проблемы на уровне активного сетевого оборудования
Как минимум три варианта
1. Глюк в коде. Наиболее реальный.
2. Легкий ддос на статику. У воркеров nginx кончились коннекты.
3. Проблемы на уровне активного сетевого оборудования
1. Но по идее это же должно было быть видно. Если скрипты долго работают - их бы было видно по server-status?
2. По-моему у меня когда-то (ещё на небольшом VPS) была такая проблема, но nginx активно писал в логи о том, что ему не хватает коннектов.
3. Ну тут я, естественно, ничего не могу сказать :( жаль если так.
Похоже, чтобы понять в чем была проблема - надо или ждать следующего НГ или заказать где-то ДДОС чтобы создать примерно туже нагрузку и запустить сразу несколько админов на сервер :)
По чем нынче ДДОСы? ))
Зачем гадать?
Создайте нагрузку siege или ab.
Локализуйте проблему. Зайдите по IP на бекенд http://11.22.33.44:8080
Зачем гадать?
Создайте нагрузку siege или ab.
Локализуйте проблему. Зайдите по IP на бекенд http://11.22.33.44:8080
Дак не получается повторить. Если делаю относительно много конкурирующих запросов в ab - то в server-status вижу кучу открытых (работающих) соединений. Сайт начинает работать медленнее (хоть первый коннект, хоть 10й), LoadAverage подрастает до 3-4. Если делаю ещё больше конкурирующих запросов (например 1000) - уже валятся ошибки в логи, LA может быть и 15 и больше. Апач не справляется. Но это же не то, что надо.
Антон также подтвердил что никаких ошибок на сервере нет.
В то время как сайты тупят, сотрудник из systemintegra - говoрит нету ошибок ;) новогодняя сказка ;)
А давно у нас тормоза сайтов стали на 100% связаны с настройками сервера? К примеру, какой то блок рекламный может не прогружаться изза проблем на стороннем ресурсе и будут тормоза. или код той же сапы.
Мы все "умные", когда обсуждаем других
Но это же не то, что надо.
Смоделируйте реальную нагрузку. Убедитесь, что ваш "кеш" при этом задействован.
Что непонятно?
А давно у нас тормоза сайтов стали на 100% связаны с настройками сервера? К примеру, какой то блок рекламный может не прогружаться изза проблем на стороннем ресурсе и будут тормоза. или код той же сапы.
И что, это разве не проблема? В сухом итоге: проблема есть, но источник ее определить не сумели.
Может ТЗ был принят безграмотный (сделай то, не знаю что), а может доверили выполнение нанятому школьнику. Извините, но в любом случае двоечка.