ачеві. Найбільш серйозному аналізу слід піддати компоненти сторінок / index / new / all / index.php. Як випливає з діаграми, розміщеної на малюнку 7 (розділ 6), на даній сторінці знаходиться компонент games.calendar. У процесі реалізації логіки роботи компонента для отримання властивостей елементів інформаційного блоку, зазначеного в налаштуваннях компонента, використовується метод _CIBElement: GetProperties (), який вибирає всі властивості елемента, наслідком чого стало велике число запитів до web-додатку і формування великого файлу кешу (понад 1 Мб). Даний метод був використаний для універсальності роботи компонента: в одному з шаблонів компонента можна було б отримати значення будь-якого з властивостей без додаткових дій. Але платою за універсальність єуповільнення роботи компонента. Після наради з замовником було прийнято рішення змінити сценарій роботи компонента, усунувши зазначені вище недоліки і тим самим знизивши універсальність компонента, але значно підвищивши продуктивність роботи компонента.
Після внесення змін для тих же показників був проведений другий тест, який дав результати, зазначені в таблиці 3.
Таблиця 3 - результати тесту 2. с=100, t=300S
Адреса страніциНагрузка,% Середній час формування сторінки, сек /pc/index.php29.720.9559/index/new/all/index.php22.060.6110/pc/new/index.php4.130.7122/detail/index.php5.370.4817/index/top/index.php2.110.4624/xbox_360/index.php1.510.6463/about/index.php0.480.2360/advertisement/index.php0.720.5875/contacts/index.php0.480.4291/pc/upcoming/index.php1.030.9263/pc/top/index.php3.311.0613/search/index.php9.081.9390/index/new/index.php3.430.4970
Як видно з результатів тесту 2, представлених в таблиці 2, після зміни логіки роботи проблемного компоненту навантаження на комп'ютер web-додатки та час генерації сторінок помітно зменшилися. Тепер тільки час генерації сторінок / search / index.php та / pc / top / index.php перевищує одну секунду. Це можна пояснити тим, що у компонентів games.search і games.raiting не включене кешування. Для усунення проблеми необхідно включити кешування даних компонентів.
Тепер, після усунення всіх проблем, виявлених при попередніх тестах, можна збільшити число одночасних користувачів при імітації навантаження до 300 і збільшити час імітації до 600 секунд (10 хвилин), щоб оцінити поведінку web-додатки при великих навантаженнях.
[root @ v8733 ~] # siege - c 300 - d 1 - t600S - i - f / home / dima / access_log.log
Після закінчення імітації були отримані наступні результати:
Таблиця 4 - Результати тесту 3. с=300, t=600S
Адреса страніциНагрузка,% Середній час формування сторінки, сек / pc/index.php33.790.4454Табліца 4 - результати тесту 3. с=300, t=600S./index/new/all/index.php23.660.2403/pc/new/index.php5.000.3264/detail/index.php4.280.1797/index/top/index.php2.490.2138/xbox_360/index.php1.740.3262/about/index.php0.260.1330/advertisement/index.php0.610.1560/contacts/index.php0.450.1843/pc/upcoming/index.php0.480.2465/pc/top/index.php2.820.3863/search/index.php5.280.3390/index/new/index.php3.780.2219
Як видно з результатів тесту зі значеннями параметрів c=300 і t=600S, час генерації сторінок і навантаження на комп'ютер web-додатки помітно зменшилися, чому поспос обство...