Скорост на изпълнение на скриптовете

Скорост на изпълнение на скриптовете Въведено на: 18.05.2010
Категория: Обща информация

Всяка страница в един динамичен сайт реално се подава от програма(скрипт).Сървърът приема вашата заявка, подава я на програмата на CMS, тя се обработва и резултатът ви се връща във вид на html страница.

Най-често за по-бързо разписване на кода на сайта разработчиците използват готови open source системи като Joomla, Drupal, OSCommerce, Zen Cart. Тези системи позволяват с минимум познания по програмиране да се подкара сайт с потребителски права, различни модули, които се теглят готови от мрежата, и т.н., но има своята цена- страниците се генерират понякога за време и над секунда или даже по няколко секунди на страница, което означава два сценария при голямо натоварване- скалиране с много сървъри или блокаж на целия сайт.

Защо се получават тези блокажи? Компютрите нямат хиляди процесори. Всяка програма, която отнема секунда за изпълнение, блокира изпълнението на други програми на дадения процесор, а даже и на най-мощните сървъри, те са примерно 16. При един процесор 10 едновременни заявки биха означавали последната да получи отговор за 10 секунди. Това кара потребителя да се изнерви, да поиска наново страницата и броят на заявките става такъв, че предизвиква блокаж на сървъра. Разбира се, 10000 потребители не заявяват страници в една секунда, но за сайт с 10000 човека дневно пиковете са до 50-60 заявки в секунда. За да няма застъпвания на заявки или те да не се усетят, се гони времето за подаване на текста на готовата страница да е минимално. 0.1 секунда на заявка значи около секунда закънение при 10 заявки едновременно на един процесор.

Проблемът със скоростта на open source системите се решава чрез разписване на собствен олекотен CMS, който да не зависи от толкова много модули и код. Въпреки това всяка заявка до базата данни забавя, всеки ред код може да се отрази на производителността. При базите данни разместването на нещо в заявката може да доведе до десетки пъти по-бързо изпълнение. Най-често за малки клиенти цялостен CMS не се оптимизира и така в този сегмент сайтовете по принцип са бая бавни и при достигнато натоварване се разписват от 0.

Стандартно страниците се води, че са бързи, ако се подават за десети от секундата. По мнението на създателите на някои от най-натоварените български сайтове се гони страница средно да се показва за под 0.01 секунди. Това става много трудно благодарение на така наречените кешове (Вече генерирано съдържание се подава на максимум хора готово, за да не се товари машината.) и изисква и максимална оптимизация на кода, но не е невъзможна мисия. Нашият CMS при тест подава кеширани страници на chochoichocho.com за 0.008-0.01 секунди, без кеш ги генерира за 0.03-0.04 секунди въпреки наличните над 18000 страници в базата данни.




Още статии от Обща информация

Прочетете повече за Оптимизация за търсещи машини(SEO)

18.05.2010- Оптимизация за търсещи машини(SEO)

Търсещите машини все още са най-сигурният начин за провличане на посетители на сайтовете. При онлайн рекламата най-често кликаемостта на банерите е 0.5-0.6 промила или 5-6 натискания на 1000 показвания. В същото време цените на банерите не са ниски и са примерно 10 стотинки на всеки клик, т.е. привлечен посетител. При борбата за привличане на посетители всичко може да бъде безплатно и да се привличат и хиляди посетители на ден при достатъчно съдържание. Ние знаем това, защото сме го постигали в нашите проекти.

Прочетете повече за Оптимизация на зареждането от браузъра

18.05.2010- Оптимизация на зареждането от браузъра

Някъде около 2000г. инженер на Yahoo публикува книга с описание на 10 правила за оптимизиране на сайта за по-бързото му зареждане и показване. Тогава скоростите на връзките са още ниски и влиянието на тези правила върху усещането на потребителя за скоростта на сайта е огромно. Оказало се е, че най-големият проблем на разработчиците в Yahoo е бил, че оптимизират всичко да се генерира за минимално време, но страниците се зареждат понякога и по 10-15 секунди. В наши дни трудно човек ще усети разликата между зареждане за 2 секунди и за 4, но този сбор от правила постоянно противно на общата логика се развива. Защо ли компании като Yahoo толкова държат на тези правила?


Категории в блога на Awsum labs




Сподели страницата




Ключови думи: оптимизация на сайт, скорост


На фокус

Dream CMS

Dream CMS събира в себе си опита на Awsum labs за проектиране на натоварени сайтове и управление на SEO. Това е може би една от най-бързите системи за управление на съдържание на българския пазар.

Портфолио

    Реклама

    Новини

    Довършен редизайн и нов javascript framework

    Довършен редизайн и нов javascript framework 09.08.2010
    Новият ни дизайн вече може да бъде обявен за довършен и изтестван. Основната разлика е в анимираните ефекти по сайта и представянето на галерии и информация на индексната страница. В него prototype и ...

    Редизайн на сайта ни

    Редизайн на сайта ни 02.08.2010
    Решихме да направим редизайн на сайта си. Все още има бая неща за доизпипване, но се надяваме скоро да се изчистят разните дребни проблеми в новата визия. Може би няма да успеем да изчистим всичко в б...


    Script executed in 0.0150s.