СОЗДАНИЕ ТЕСТОВОГО МОДУЛЯ «АНАЛИЗ ПИКОВОЙ НАГРУЗКИ» ИНТРАНЕТ-ПОРТАЛА

СОЗДАНИЕ ТЕСТОВОГО МОДУЛЯ

«АНАЛИЗ ПИКОВОЙ НАГРУЗКИ» ИНТРАНЕТ-ПОРТАЛА

Устинова Людмила Валерьевна, старший преподаватель кафедры «Прикладная математика и информатика»,

Фазылова Лейла Сабитовна, старший преподаватель кафедры «Прикладная математика и информатика»,

Дошаков Абай Сундетович, магистрант 2-го года обучения специальности 6М060200 Информатика факультета математики и информационных технологий Карагандинский государственный университет им. Е.А. Букетова, Казахстан Устинова Л.В., Фазылова Л.С., Дошаков А.С.

  В данной статье исследуются вопросы увеличения эффективности работы предприятия посредством созданного интранет-портала, рассматриваются основные принципы разработки модуля анализа нагрузки на сервере с целью выявления основных ошибок конфигурации интранет-портала.    

   Деятельность современных предприятий носит многопрофильный характер, а управление на основе информационных технологий является сложной комплексной задачей. С учетом этого решения организационных и технологических проблем должны приниматься с учетом экономической целесообразности. Как правило, использование корпоративного программного обеспечения, а именно портальных технологий, является одним из способов решения задач по внутренним коммуникациям, управлению персоналом, обеспечению преемственности опыта, повышению корпоративной культуры предприятия. Главной целью исследования корпоративного портала как платформы для ведения эффективного бизнеса является предоставление единой точки доступа к ключевым данным, что позволит сократить трудовые и временные затраты. При изучении современных портальных технологий было выявлено, что порталы представляют собой универсальное средство построения комплексных информационных систем. Они дают возможность в рамках единого интерфейса обеспечить массовый доступ к информации, а также предоставить каждому пользователю исчерпывающий набор необходимых ему функций и сервисов. Анализ популярных портальных решений показал, что в настоящее время на рынке существует целый ряд специализированных решений для построения порталов. К наиболее популярным можно отнести платформы, предлагаемые ведущими поставщиками программного обеспечения: 1С-Битрикс, IBM WebSphere, Microsoft SharePoint, Oracle Weblogic, SAP NetWeaver и другие. Особенности построения корпоративных порталов во многом зависят от целей, задач заказчика, его корпоративной культуры, текущего уровня автоматизации компании. При создании интранет-порталов существуют следующие варианты портальных решений: покупки готовых решений; заказные разработки; комбинированный подход [1]. Целью данной работы является повышение эффективности функционирования корпоративного портала за счет использования специализированных инструментальных средств, платформы «1С-Битрикс. Корпоративный Портал», а также дополнительно созданного модуля «Анализ пиковой нагрузки». Для достижения цели необходимо решить следующий перечень задач: 1 Изучить критерии качества внедряемого портала. 2 Рассмотреть способы и критерии увеличения производительности портала. 3 Создать модуль тестирования записи пиковой нагрузки на сервере. «1С-Битрикс: Корпоративный портал» создан на платформе Bitrix Framework и является готовым продуктом, позволяющим быстро развернуть корпоративный портал. В базовой поставке идёт большой набор компонентов, и именно он обеспечивает быстрое развёртывание и внедрение проектов. Однако не достаточно просто развернуть портал, необходимо выполнить тщательное тестирование, для того чтобы оптимально настроить работу портала. Основная цель работы — сдать заказчику проверенный, качественный проект, таким образом, снизив количество ошибок. Для облегчения процесса внедрения и сдачи проекта конечному клиенту в Битрикс используют стандартные методы: сертификация, обучение. Но этого оказалось недостаточно. Начиная, с девятой версии для решения проблемы качества внедрения был создан Монитор качества. Монитор качества внедрения – это checklist, по которому выполнятся проверка проекта перед сдачей. Система тестов для web-разработчиков включает 26 обязательных и 39 необязательных тестов, 11 автоматических проверок. Монитор качества позволяет разработчикам систематизировать процедуру тестирования, повысить качество создания проектов, формализовать отношения с заказчиками. Результаты прохождения тестов монитором качества позволят снизить риски и затраты, как на этапе приемки, так и на этапе его поддержки и сопровождения. Таким образом, монитор качества – достаточно мощный комплексный инструмент, предназначенный для повышения уровня гарантированного результата и снижения общих рисков. Для успешного прохождения тестов монитора качества, необходимо увеличить оценку производительности системы. Основным препятствием в этом вопросе являются сами администраторы. Так при развертывании портала «по умолчанию», значение конфигурации определялось 7.3 при эталоне 30. Разработчики оценивают значение меньше 10 как неудовлетворительно [2]. Такая оценка связана с не выполнением рекомендаций по оптимальной настройке php. Параметры настройки значительны и существенно влияют на производительность. Оценка производительности будет изменяться в зависимости от нагрузки. Чем сильнее нагружен сервер, тем ниже оценка. Но даже при пиковой нагрузке она не должна опускаться ниже приемлемого уровня, тогда сервер справляется с нагрузкой. Например, производительность не менее 10 единиц соответствует загрузке одной страницы за 0,1 секунду. Оценка производительности не показывает возможности масштабирования системы. Процесс Web-сервера работает на одном ядре, соответственно, при измерении производительность без нагрузки, число ядер процессора не повлияют на результат. Для проверки корректности полученных результатов имитируем нагрузку на сервер. Сервер должен сохранять хороший результат при нагрузках. Для увеличения производительности в системе разработан модуль компрессии. Модуль компрессии при передаче данных между сервером и клиентом компрессирует страницы для ускорения вывода содержания сайта пользователям. Предварительный результат расчета производительности создаваемого портала представлен на рисунке 1. Таким образом, использование данного модуля позволило в несколько раз уменьшить объем передаваемых HTML-данных между сайтом и браузером клиента, что существенно увеличивает скорость работы как для посетителей, так и для администраторов сайта. Для увеличения производительности необходимо оптимизировать время открытия страницы. Для достижения поставленной задачи разработан модуль тестирования времени загрузки страниц, определяемое как сумма времени загрузки html страницы и статики: 1 загрузка html страницы: время выполнения SQL запросов, php кода и загрузки данных по сети; 2 загрузки статики включает время загрузки CSS cтилей, JS скриптов, изображений и т.п. СОЗДАНИЕ ТЕСТОВОГО МОДУЛЯ  «АНАЛИЗ ПИКОВОЙ НАГРУЗКИ» ИНТРАНЕТ-ПОРТАЛА
 В результате тестирования при отключенном акселераторе время открытия страницы 1,9 сек, выполнения запросов 0,2 секунды. Так как данные сформированы на сервере, время загрузки не учитываем. Таким образом, время работы php скриптов составляет 1,8 секунды. Выполнение оптимизации базы сокращает время открытия страницы на 6% (2,0 секунды). Для уменьшения времени работы скриптов необходимо установить один из акселераторов php. Общее время создания страницы уменьшилось в 3 раза, с 2,1 секунды до 0,7 секунд. На тестируемом сервере используем Zend Server CE: бесплатная сборка Apache и Php. Результаты увеличения производительности составили 3,2 раза. Однако при тестировании при увеличении нагрузки (кол-ве запросов/сек ~ 15-20, одновременных пользователей/сессий > 300) оптимизатор может отключаться. Это характерно при большом количестве допустимых дочерних процессов Apache, параметр MaxClients >= 50. При уменьшении MaxClients до 20, этот негативный эффект пропадает и оптимизатор Zend Server продолжает успешно работать независимо от нагрузки. Противоположный вариант – выполнение большого числа избыточных запросов. В этом случае, работа базы составляет основное время. Используем инструмент «Статистика SQL запросов» определяем неэффективный запрос. При включении кэширования запросы к базе отсутствуют, соответственно, общее время работы компонента сокращается в 2 раза. Для наиболее сложных запросов создаются дополнительные индексы в БД. Таким образом, анализ генерирования страниц позволит улучшить работу портала в целом. Выполним анализ второго этапа загрузки страницы – статики. Браузер запрашивает стили, скрипты, изображения. Кроме визуального восприятия скорости загрузки статики влияет на работу сервера. Apache загружает неиспользуемые модули php [3], что приводит к нерациональному потреблению оперативной памяти. На посещаемом сайте применяют двухуровневую архитектуру. Однако возможна ситуация, при которой портал создаёт нагрузку на сервер. Подтверждением этого может служить уведомление превышения нагрузки на виртуальном хостинге. Но какая конкретно страница создает такую нагрузку не известно. Одним из эффективных решений оптимизации нагрузки является определение нагрузки на сервер с помощью «Монитора производительности». Альтернативным решением, предлагаемым автором, служит запись времени открытия страниц в текстовый файл в случае превышения нагрузки, для дальнейшего анализа результата. Результаты работы теста содержат общее количество хитов, статистику страниц – минимальное, максимальное и среднее время открытия. Результаты можно отсортировать по перечисленным выше показателям. Выполнив сортировку по среднему значению времени, определим страницы с наиболее низкой скоростью загрузки, проанализируем их, используя встроенные инструменты отладки. Используя показатель сортировку по суммарному времени, определяем, что большое число хитов направляется на 404 страницу. В результате, создаётся существенная нагрузка, независимо оттого, что страница 404 открывается быстро. Перенаправление на 404 страницу, может быть связано с некорректной ссылкой на изображение. Таким образом, предложенный алгоритм позволит выполнить дополнительный анализ производительности сайта. Однако в разные интервалы времени производительность всей системы может отличаться. Например, если на разделяемом хостинге на «соседнем» аккаунте создается значительная нагрузка, это приводит к падению производительности на всем сервере. Вследствие этого, страницы будут медленнее генерироваться. Такая нагрузка имеет периодичный характер, и смоделировать ситуацию при диагностировании работы портала в тех же условиях сложно. Добавим возможность построения гистограммы на основании собранных данных (рис. 2). Построение графика осуществляется подключаемыми классами pChart. В разработанном модуле предложен минимальный набор инструментов: 1 удаление результатов тестирования; 2 возможность ввода даты формирования отчета; 3 фильтр допустимого времени генерации страницы (по умолчанию – 5 секунд); 4 построение графика по часам, минутам.
СОЗДАНИЕ ТЕСТОВОГО МОДУЛЯ  «АНАЛИЗ ПИКОВОЙ НАГРУЗКИ» ИНТРАНЕТ-ПОРТАЛА

 Построение графика возможно в двух режимах: минуты, часы. При по-строении графика по оси абсцисс откладываются часы суток с указанием максимального значения нагрузки. Под графиком выводится табличный от-чет о максимальных нагрузках на сайт. Для получения подробного отчета по китам за определенный день, указанным в фильтре, предложена ссылка «Подробнее». При проведении диагностики отчет содержит: URL, время, дата генерации страницы; ID, 1Р, Cookie, User agent пользователя; Тип за-проса. Анализ отчетов позволит определить, какие из страниц задают большую нагрузку на сервер, и время генерирования страниц на протяжении заданно-го промежутка времени. Выполнив анализ производительности портала, протестировав и настроив в соответствии с рекомендациями разработчиков, значение производительности изменится до 32,5 — хорошо. Таким образом, данное решение совместно со штатными средствами позволило, проанали-зировав, увеличить производительность портала с оценки неудовлетвори-тельно на оценку хорошо. Разработанный портал позволил организовать эффективное управление информационным содержимым компании, сокра-тить время обработки заявок с подключением модуля Экстранет. Подводя итоги работы, можно выделить ряд моментов: — разработан мастер создания компонентов, позволяющий автоматизи-ровать процесс создания компонента в 1 С-Битрикс, с целью дальнейшего расширения функциональных возможностей; — разработан алгоритм анализа нагрузки на сервере с целью выявления основных ошибок конфигурации портала; — для увеличения производительности с использованием штатного ме-ханизма событий Bitrix Framework создан дополнительный тест нагрузочного тестирования, что совместно с использованием Монитора качества позволит увеличить производительность портала.  Практическая значимость заключается в возможности использования по-лученных результатов фирмами, занимающимися технической поддержкой корпоративных порталов, в основном на этапе сопровождения продукта, а так же в разработке элементов корпоративного портала, позволяющего ор-ганизовать  совместную  работу  предприятий  на  основе  технологии1С-Битрикс.  Результаты данного эксперимента подтвердили перспективность внедре-ния интранет-портала для практического применения на малом предпри-ятии. В перспективе, возможно, создание многосайтовой системы для при-влечения клиентов, и дальнейшего развития бизнеса.

 Список литературы 1. Р.И. Басыров. 1С-Битрикс. Корпоративный портал. Повышение эффективности компании. – СПб.: Питер, 2012. – 318 с.  2.  Список  терминов.  Документация  для  разработчика: http://dev.1cbitrix.ru/api_help/main/general/terms.php#Portal  3. Л. Веллинг. Разработка веб-приложений с помощьюPHP иMySQL. М.: Вильямс,  2010. – 848 с. 

 

Добавить комментарий