Проект

Общее

Профиль

Улучшение #4038

Оптимізація: перегляд завантаження темплейтів

Добавил(а) Віталій Андрусяк 10 месяца назад. Обновлено 9 месяца назад.

Статус:
На тестировании
Приоритет:
Нормальный
Дата начала:
14-07-2023
Дата завершения:
Готовность:

90%

Оценка трудозатрат:
3.00 ч
Трудозатраты:
Важность:
100
Сложность:
5
Цель:
Применение:
Время на тест:

Описание

Також відповідно до задачі #4037, за допомогою програми strace було помічено, що чомусь багато разів
вебка стукає по диску за незрозумілими шляхами, яких і в теорії існувати не може.

Методом перегляду коду, можна побачити, що існують дублікати відносних шляхів не враховуючи відносну змінну libpath
Це помічено і в функції _include та templates.

Тому, варто мінімізувати кількість шляхів шляхом використовування змінної $libpath, яка знаходиться в кожному скрипті та .cgi файлі.

Це дозволить скоротити кількість "стуків" в диск, що покращить продуктивність, в особливості на системах з слабким I/O.

Очікуваний результат:
Дедублікація і скорочення шляхів завантаження темплейтів в _include та templates разом зі змінною $libpath

История

#1 Обновлено Віталій Андрусяк 10 месяца назад

  • Параметр Назначена изменился на Віталій Андрусяк

#2 Обновлено AsmodeuS Asm 10 месяца назад

  • Параметр Версия изменился на 176 24.07.2023 09:00:00

Віталій Андрусяк писал(а):

Також відповідно до задачі #4037, за допомогою програми strace було помічено, що чомусь багато разів
вебка стукає по диску за незрозумілими шляхами, яких і в теорії існувати не може.

Методом перегляду коду, можна побачити, що існують дублікати відносних шляхів не враховуючи відносну змінну libpath
Це помічено і в функції _include та templates.

Тому, варто мінімізувати кількість шляхів шляхом використовування змінної $libpath, яка знаходиться в кожному скрипті та .cgi файлі.

Це дозволить скоротити кількість "стуків" в диск, що покращить продуктивність, в особливості на системах з слабким I/O.

Очікуваний результат:
Дедублікація і скорочення шляхів завантаження темплейтів в _include та templates разом зі змінною $libpath

так це непоганий підхіж одне треба зразу перевірити консольні утіліти чи вони себе добреповедуть

billd periodic urepors_sender abm_console

#3 Обновлено Віталій Андрусяк 9 месяца назад

  • Параметр Статус изменился с Новая на В работе

#4 Обновлено Віталій Андрусяк 9 месяца назад

Разом з оптимізацією #4037 де був переглянутий шлях компілятора на найбільший оптимальний, вдалось скоротити кількість сисколів на 300-600 (в залежності від сторінки)

Проте, в мене ефект майже непомітний, оскільки в мене дуже швидке I/O, але ефект все одно є.

Результати:
До: 126 мс
Після: 125 мс

#5 Обновлено Віталій Андрусяк 9 месяца назад

  • Параметр Статус изменился с В работе на На тестировании
  • Параметр Готовность изменился с 0 на 90

#6 Обновлено Віталій Андрусяк 9 месяца назад

Як тестувати?

Перегляньте завантаження кастомних темплейтів та NAS_GID (запитати в Андрія), і якщо все працює в цьому напрямку - тоді все ок.

Экспортировать в Atom PDF