Jump to content

Вопрос про апач


Николя223
 Share

Recommended Posts

Кто нибудь сталкивался с тем, что на всех сайтах падает скорость отгрузки данных. Сайты у нас грузятся по 8 секунд.. недавно началось.

Конфигурация сервера: 6 ядер, 2 Гигабайта ОЗУ, на жестком диске свободно 13 Гб.

Хостингуются немного больше чем 200 сайтов.

В чем может быть проблема? Или дело в количестве сайтов?.. мало-вероятно...

Edited by Николя223
Link to comment
Share on other sites

1) Какой тип виртуализации от этого многое может зависеть. Также и от самой ноды (сервера на котором vds).

Например, виртуализация OpenVZ быстрая, но при нехватке оперативки сервисы просто отваливаются. А виртуализация XEN хуже держит дисковую нагрузку чем KVM, причем существенно (на тех же дисках).

2) Какой тип бд innodb или же myisam, иннодб вроде как скидывает в tmpfs временные таблицы, потом оттуда их и берет, чем собсна и загружает дисковое пространство.

3) 13 гигов - это очень мало, у нас и 80 быстро забиваются, а тут 13...

4) точно не скажу, но за скорость отклика с сервера вроде как отвечает http keep alive

5) неплохо было бы ускоритель php поставить, типа eaccelerator

Link to comment
Share on other sites

и nginx поднять в качестве проксирующего демона чтоб из-за статики не дергать apache

А вообще 2 гига памяти маловато для 200 сайтиков. Возможно вас посетил какойто бот, и из-за бешеного количества запросов у вас просто напросто забита ОЗУ. Проверте логи апача по всем доменам.

Edited by wwt
Link to comment
Share on other sites

Хм... только начал все это разбирать, многово не знаю.

Про виртуализацию ничего не могу сказать, по ядру определить можно? вот что SSH говорит

/var/log$ uname -a

Linux Astro-new 2.6.32.36-228-scalaxy #1 SMP 2011-04-14 10:12:31 +0200 x86_64 GNU/Linux

Просматривая последние измененные категории. Нашел одну с папкой xen...

Я на оперативку грешу. Её явно не хватает свободных только ~100 -200 Мб

У нас базы данных у сайтов на этом сервере не больше 1 - 2 мегабайт...

Тип БД, предполагаю можно определить по расширению... найти не могу, завтра уточню

Про keep alive...

Прочитал про него. Как то можно проверить включен он или нет ? файл с конфигурацией ( httpd.conf) пустой

Хм... вот разберусь с этими тормозами, действительно ускоритель поставлю, спасибо)

upd: может кому понадобится. Тип базы данных можно посмотреть через phpMyadmin. Напротив каждой таблицы. в моем случае это MyISAM

и nginx поднять в качестве проксирующего демона чтоб из-за статики не дергать apache

А вообще 2 гига памяти маловато для 200 сайтиков. Возможно вас посетил какойто бот, и из-за бешеного количества запросов у вас просто напросто забита ОЗУ. Проверте логи апача по всем доменам.

да, спасибо, посмотрю сейчас что там в логах...

Ну вот... логи посмотреть не могу. скорость ftp 12 килобит/ сек. и обрыв соединения

wwt, а это может быть косяк провайдера? по ftps больно уж скорость низкая...

Edited by Николя223
Link to comment
Share on other sites

wwt как всегда прав, nginx+apache хорошая связка, особенно для статичных и небольших сайтов, ну или для дерганья кэша как html файлов, без запросов к бд.

команда top или htop или atop (но лучше наверное top, она всегда есть) в ssh должна показать что именно у вас кушает, а потом через server-status вычислить процесс и убить его.

а вообще, у меня есть подозрения что apache у вас запущен в режиме mpm-itk, а данный режим позволяет множить процессы запускаемые от httpd, но зато с правами трабл меньше, нежели в режиме mpm-prefork например.

я с этой траблой справился только через php в режиме FastCGI, но это не самый лучший выход, в режиме Apache все же быстрее работает.

вобщем пища вам есть для размышления, есть над чем подумать ;)

Link to comment
Share on other sites

Спасибо ребят) wwt отдельное. нашел возможность через SSH логи просматривать, и тут же начал с лога ошибок...

Один сайт раз по 50-100 в секунду пытался к бд обратится... весь лог этим забит)) там ещё ошибки вылезли, но не такие страшные. сейчас не тормозит :) всё исправил

Link to comment
Share on other sites

А я вот уже наверное больше года не использую Apache, nginx более чем самодостаточен. Когда то давно столкнулся с проблемой DDOS атаки, Apache даже при сравнительно не большом числе подключений падал, nginx отлично себя показал в связке с Apache, ну а после удалось подружить nginx c php и Apache попросту стал лишним.

Link to comment
Share on other sites

Я тоже давно отказался от апача, перешёл на lighttpd. Это ещё с винды пошло, когда апач падал раз в два дня (пришлось даже мониторинг писать, который бы его запускал обратно), а ещё он вешался при отдаче больших файлов, сайт ни у кого не открывался, пока файл не докачивался до конца.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Обсуждения

    • Вы отучились на бухгалтера или программиста? Почему спрашиваю. Я финансист, бухгалтер. Естественно, в свое время отучился на курсах 1С, но как экономист. Поэтому могу помочь с развитием именно в этом направлении, так как опыт огромный. 
    • Всем привет.Не так давно начал изучать верстку.И кароче захотел создать слайдер на основе html css без js. Застрял булеты работают и стрелки также но только стрелки становяться видимы когда первый раз нажал на булет.До этого их никак немогу настроить.   <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>Document</title>     <style>         .wrapper{             width: 700px;             height: 400px;             margin:0 auto;             border:5px solid green;             border-radius: 20px;             overflow: hidden;             position: relative;         }         .container{             width: 600px;             height: 300px;             border: 5px solid green;             border-radius: 20px;             margin: 20px auto;         }         .slider__items{             display: none;         }         .bullets{             display: flex;             position: absolute;             left:100px;             bottom:30px;         }         .bullets__items{             width: 50px;             height: 15px;             border:2px solid green;             border-radius: 20px;             background-color: lightgreen;             margin: 0 20px;         }             .images{             display: flex;         }         .images__items{             width: 600px;             height: 300px;             border-radius: 20px;             margin-right: 55px;         }               .arrows__prev{             background-image: url(./img/next.png);             background-size: contain;             width: 40px;             height: 40px;             position: absolute;             top:150px;             left: 2px;         }         #slide1:checked ~ .images .image1{             margin-left: 0;         }         #slide2:checked ~ .images .image2{             margin-left: -655px;         }         #slide3:checked ~ .images .image3{             margin-left: -1310px;         }         #slide4:checked ~ .images .image4{             margin-left: -1965px;         }         #slide5:checked ~ .images .image5{             margin-left: -2620px;         }         #slide1:checked ~ .arrow__next .img2,         #slide2:checked ~ .arrow__next .img3,         #slide3:checked ~ .arrow__next .img4,         #slide4:checked ~ .arrow__next .img5,         #slide5:checked ~ .arrow__next .img1{             display: block;             background-image: url(./img/next.png);             background-size: contain;             width: 40px;             height: 40px;             position: absolute;             top:150px;             right: 2px;                 }         #slide1:checked ~ .arrow__prev .img5,         #slide2:checked ~ .arrow__prev .img1,         #slide3:checked ~ .arrow__prev .img2,         #slide4:checked ~ .arrow__prev .img3,         #slide5:checked ~ .arrow__prev .img4         {             display: block;             background-image: url(./img/prev.png);             background-size: contain;             width: 40px;             height: 40px;             position: absolute;             top:150px;             left: 2px;                 }     </style> </head> <body>     <div class="wrapper">         <div class="container">             <div class="slider">                 <input type="radio" name="slider" class="slider__items" id="slide1">                 <input type="radio" name="slider" class="slider__items" id="slide2">                 <input type="radio" name="slider" class="slider__items" id="slide3">                 <input type="radio" name="slider" class="slider__items" id="slide4">                 <input type="radio" name="slider" class="slider__items" id="slide5">                                 <div class="bullets">                     <label for="slide1" class="bullets__items"></label>                     <label for="slide2" class="bullets__items"></label>                     <label for="slide3" class="bullets__items"></label>                     <label for="slide4" class="bullets__items"></label>                     <label for="slide5" class="bullets__items"></label>                 </div>                 <div class="arrow__next">                     <label for="slide1" class="arrows__item img1"></label>                     <label for="slide2" class="arrows__item img2"></label>                     <label for="slide3" class="arrows__item img3"></label>                     <label for="slide4" class="arrows__item img4"></label>                     <label for="slide5" class="arrows__item img5"></label>                 </div>                 <div class="arrow__prev">                     <label for="slide1" class="arrows__item img1"></label>                     <label for="slide2" class="arrows__item img2"></label>                     <label for="slide3" class="arrows__item img3"></label>                     <label for="slide4" class="arrows__item img4"></label>                     <label for="slide5" class="arrows__item img5"></label>                 </div>                 <div class="images">                     <img src="./img/1.jpg" alt="" class="images__items image1">                     <img src="./img/2.jpg" alt="" class="images__items image2">                     <img src="./img/3.jpg" alt="" class="images__items image3">                     <img src="./img/4.jpg" alt="" class="images__items image4">                     <img src="./img/5.jpg" alt="" class="images__items image5">                 </div>             </div>         </div>     </div> </body> </html>
    • Актуально, до сих пор актуально. Много кричали, что SEO умирает и умерло. Ничего подобного, СЕО живее всех живых и по-прежнему работает. 
    • Мне нужен такой результат : Не понимаю почему background не применяется вокруг иконок:   Сам код: Html: css: Html: <section class="finish"> <div class="container"> <h2 class="finish_header">По окончании обучения Вы сможете!</h2> <div class="finish_divider"></div> <div class="finish_wrapper"> <finish_item> <div class="finish_round"> <img src="/icons/finish/1 (1).png" alt="" class="finish_icon"> </div> <div class="finish_descr">Создать свой сайт или блог</div> </finish_item> <finish_item> <div class="finish_round"> <img src="/icons/finish/2.png" alt="" class="finish_icon"> </div> <div class="finish_descr">Создать свой сайт или блог</div> </finish_item> <finish_item> <div class="finish_round"> <img src="/icons/finish/3.png" alt="" class="finish_icon"> </div> <div class="finish_descr">Обеспечить ему медленный, но верный рост в ТОП</div> </finish_item> <finish_item> <div class="finish_round"> <img src="/icons/finish/4.png" alt="" class="finish_icon"> </div> <div class="finish_descr">Достигнуть стабильного прироста посетителей</div> </finish_item> <finish_item> <div class="finish_round"> <img src="/icons/finish/5.png" alt="" class="finish_icon"> </div> <div class="finish_descr">Достигнуть стабильного прироста посетителей</div> </finish_item> </div> </div> </section>   Css: .finish .finish_wrapper { margin-top: 41px; display: flex; justify-content: space-between; } .finish .finish_wrapper .finish_item { width: 204px; } .finish .finish_wrapper .finish_item .finish_round { width: 115px; height: 115px; background-color: #b4e2ff; border-radius: 8px; } .finish_descr { font-family: Roboto; font-size: 17px; line-height: 20px; font-weight: 300; color: #efefef; Спасибо!   Уже решил, спасибо! У меня CSS селектор вида:.finish .finish_wrapper .finish_item .finish_roundА должен быть:.finish .finish_wrapper finish_item .finish_roundТ.е. без точки перед finish_item, так как это не класс, а элемент
    • Есть вопрос по макету. (psd) Макет более 80мб. На форуме не выложишь. Где лучче залить файл и выложить ссылку на него? (Гугл диск подойдет?) Может у кого, знающего найдется 10 минут, чтоб ответить на вопрос по верстке?
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy