Тестирование, несомненно, является одним из китов, на которых стоит разработка приложений. Как и любой характерный кит, тестирование может зафонтанировать багами и долго не останавливаться. Но главный вопрос заключается в достаточности тестового покрытия – все ли баги по написанным тест-кейсам удастся отловить? Возможно, некоторые появятся только под пользовательской нагрузкой. Для выявления оных, как правило, детонирует обращение пользователя и далее задействуется следующая цепная реакция: специалист Help Desk, вторая линия поддержки и, если повезет, сообщение о нештатной работе попадет в руки разработчика. Да, инцидент может также прийти от системы APM-мониторинга (если она у вас есть, конечно). Но все эти вещи не позволят однозначно определить, какие значения принимали переменные до возникновения исключения. В посте мы как раз поговорим о решении, призванном в помогать в подобных ситуациях.
Инфосистемы Джет
российская ИТ-компания
Сначала показывать
Анализируем производительность сервера Oracle SPARC T7-2
6 мин
5.9KОдной из самых важных новостей компании Oracle в 2015 году стал выход нового процессора SPARC M7 и линейки серверов на его основе. В эту линейку вошли серверы T-серии (T7-1, T7-2, T7-4) и серверы M-серии (M7-8, M7-16).
Помимо уникальных физических характеристик (частота 4,13 гГц, 32 ядра, до 256 потоков) на процессоре M7 заявлена возможность переноса части SQL-логики базы данных Oracle на специальные сопроцессоры DAX (Data Analytics Accelerator). Эта технология получила название «SQL in Silicon» – с ней новый процессор M7 позиционируется как первый процессор в истории ИТ, в том числе оптимизированный под задачи Oracle Database.
В начале 2016 года стало возможно тестирование серверов T-серии, и мы одними из первых в России параллельно протестировали сразу два тестовых сервера T7-2 (по два процессора M7 в каждом).
Помимо уникальных физических характеристик (частота 4,13 гГц, 32 ядра, до 256 потоков) на процессоре M7 заявлена возможность переноса части SQL-логики базы данных Oracle на специальные сопроцессоры DAX (Data Analytics Accelerator). Эта технология получила название «SQL in Silicon» – с ней новый процессор M7 позиционируется как первый процессор в истории ИТ, в том числе оптимизированный под задачи Oracle Database.
В начале 2016 года стало возможно тестирование серверов T-серии, и мы одними из первых в России параллельно протестировали сразу два тестовых сервера T7-2 (по два процессора M7 в каждом).
+12
Умное цветоводство, или Пусти ИТшника в огород… Часть 2
6 мин
11KДрузья, наши технологические раскопки на ниве домашне-офисного озеленения вызвали явный интерес с вашей стороны (предыдущая статья Умное цветоводство, или Пусти ИТ-шника в огород… Часть 1). Посему, как и обещали, отвечаем на ваши вопросы.
Но сначала – фото компонентов. Сам микроконтроллер-МОЗГ:
Часы реального времени с автономным питанием:
Но сначала – фото компонентов. Сам микроконтроллер-МОЗГ:
Часы реального времени с автономным питанием:
+5
Тестируем не совсем реальный (или совсем нереальный) мониторинг от New Relic и Appdynamics
3 мин
14KПривет, хабранарод! Почему совсем нереальный? Да потому что мониторинг имитирует действия реальных пользователей, но выполняется по специальному алгоритму из заданных локаций. Сами вендоры называют этот механизм Synthetics, поэтому дальше в статье будем стараться придерживаться именно такой терминологии – синтетический мониторинг.
New Relic и Appdynamics – прямые конкуренты, являются лидерами квадранта Gartner и реализуют достаточно схожий функционал. У обоих вендоров есть возможность мониторинга транзакций в приложениях, они умеют выполнять проверки на стороне браузера конечного пользователя, умеют встраиваться в мобильные приложения и, наконец, обладают одной из ключевых возможностей современного мониторинга – умеют выполнять алгоритмизированные действия в веб-интерфейсе приложения.
В предыдущих статьях по основным принципам мониторинга бизнес-приложений и расширению функционала Zabbix мы уже касались синтетического мониторинга и, нужно сказать, если ваш бизнес растет и веб-приложение обслуживает большое количество клиентов, Synthetics для вас must have. Либо он есть, либо будет. Вы же не хотите жалоб от клиентов (а в худшем случае – отказа от использования вашего сервиса), правда?
New Relic и Appdynamics – прямые конкуренты, являются лидерами квадранта Gartner и реализуют достаточно схожий функционал. У обоих вендоров есть возможность мониторинга транзакций в приложениях, они умеют выполнять проверки на стороне браузера конечного пользователя, умеют встраиваться в мобильные приложения и, наконец, обладают одной из ключевых возможностей современного мониторинга – умеют выполнять алгоритмизированные действия в веб-интерфейсе приложения.
В предыдущих статьях по основным принципам мониторинга бизнес-приложений и расширению функционала Zabbix мы уже касались синтетического мониторинга и, нужно сказать, если ваш бизнес растет и веб-приложение обслуживает большое количество клиентов, Synthetics для вас must have. Либо он есть, либо будет. Вы же не хотите жалоб от клиентов (а в худшем случае – отказа от использования вашего сервиса), правда?
+7
Применяем Check Knowledge Module (CKM) в проектах на базе Oracle Data Integrator
5 мин
2.9KЭтим постом мы открываем цикл материалов, посвященных модулю проверки корректности данных, входящему в состав ETL (или ELT – как его позиционирует ORACLE) продукта Oracle Data Integrator. На наш взгляд, функционал модуля незаслуженно игнорируется в угоду более изысканным и «интеллектуальным» продуктам класса Data Quality. В этой связи у нас есть желание взглянуть на CKM не как на некий атавизм, а как на целостное решение, позволяющее обеспечить базовый контроль над обрабатываемыми данными.
Для этого планируем:
Для этого планируем:
- рассказать о типах проверок, включенных в стандартный оракловый модуль и о том, какие настройки необходимо выполнить, чтобы их активировать;
- коснуться особенностей выполнения, возможностей по расширению стандартного модуля, использования подстановочного (substitution) API, который используется для обеспечения универсальности дорабатываемого функционала;
- на конкретном примере рассмотреть возможности, предоставляемые Oracle Data Integrator Tools, и вариант переноса настроек DEV->PROD с использованием топологии;
- оценить рабочее место оператора, обрабатывающего ошибки, обнаруженные модулем CKM.
+9
Умное цветоводство, или Пусти ИТ-шника в огород… Часть 1
4 мин
11KДрузья, сегодня пятница! Самое время вспомнить о делах домашних…И тут пытливый ум ИТшника тоже найдет благодатную почву для оптимизации. Собственно о почве и братьях наших зеленых мы и поговорим.
Недавно у нас в офисе появился необычный, но очень полезный девайс – автополивщик для растений. Настоящая умная система в отдельно взятом цветочном горшке. Первым подопытным стал фикус. И, судя по его упитанности, он остался доволен. ;)
Подробности – в рассказе «зачинщика» сего «безобразия» Михаила Пичугина, ведущего инженера-проектировщика вычислительных комплексов.
Недавно у нас в офисе появился необычный, но очень полезный девайс – автополивщик для растений. Настоящая умная система в отдельно взятом цветочном горшке. Первым подопытным стал фикус. И, судя по его упитанности, он остался доволен. ;)
Подробности – в рассказе «зачинщика» сего «безобразия» Михаила Пичугина, ведущего инженера-проектировщика вычислительных комплексов.
+5
Как приготовить тосты и заодно визуализировать ИТ-системы
10 мин
8.2KПриветствую, уважаемые читатели! В этом материале я хочу поделиться историей о приготовлении тостов и рассказать, каким образом мы расширили функционал Zabbix с помощью мотка провода и интегральной микросхемы Open Source решений. Обо всем по порядку, прошу под кат.
+10
Тестирование Huawei KunLun в Москве. Инсталляция
3 мин
8.5KВесной нам была обещана возможность тестирования сервера Huawei KunLun в Москве. В этом коротком материале я расскажу о первой (подготовительной) фазе тестирования KunLun у нашего заказчика — инсталляции железа.
Далее — много фотографий.
+14
Виртуализация на Oracle SPARC T7-2 – результаты наших тестов
5 мин
5KГлавной целью тестирования сервера Oracle SPARC T7-2 было знакомство с новыми технологиями аппаратного ускорения работы СУБД Oracle средствами нового процессора Oracle M7, на базе которого построен сервер (об этом — в наших следующих статьях). Параллельно мы протестировали функции виртуализации гипервизора Oracle VM for SPARC на сервере, о чем и пойдет речь ниже.
Серверы линейки Oracle SPARC T-series позиционируются как машины Enterprise-уровня для консолидации нескольких систем на одном физическом сервере. Для этого они имеют встроенный гипервизор Oracle VM for SPARC, развитые возможности ОС Solaris 11 по поддержке виртуальных сред, а также многоядерную многопоточную архитектуру. Предыдущие модели линейки – серверы Oracle T4/T5 – применяются для схожих задач. Заказчики довольно часто используют серверы T4/Т5-series в качестве замены нескольких устаревших SPARC-серверов. Именно поэтому Oracle SPARC T7-2 в первую очередь интересовал нас с точки зрения возможностей по виртуализации.
Серверы линейки Oracle SPARC T-series позиционируются как машины Enterprise-уровня для консолидации нескольких систем на одном физическом сервере. Для этого они имеют встроенный гипервизор Oracle VM for SPARC, развитые возможности ОС Solaris 11 по поддержке виртуальных сред, а также многоядерную многопоточную архитектуру. Предыдущие модели линейки – серверы Oracle T4/T5 – применяются для схожих задач. Заказчики довольно часто используют серверы T4/Т5-series в качестве замены нескольких устаревших SPARC-серверов. Именно поэтому Oracle SPARC T7-2 в первую очередь интересовал нас с точки зрения возможностей по виртуализации.
+8
Использование EntryPoints в SuiteCRM
3 мин
2.8KВ данном материале речь пойдет о широко известной CRM-системе c открытым исходным кодом – SuiteCRM. Открытость системы дает безграничные возможности для кастомизации, и, как пример, будет рассмотрен процесс создания динамически подгружаемых справочников из БД с использованием jQuery библиотеки select2.
Select2 может работать как со статическими наборами вариантов выбора, так и получать данные от внешних источников, имеет широко настраиваемые форматы отображения с использованием картинок и т.д. Формат данных представлен в виде JSON, поэтому наша задача разработать такой EntryPoint, чтобы на выходе получилась нужная структура JSON.
В основе SuiteCRM заложена модель MVC, и все действия предполагают обращение к action контроллера. Бывает, что необходимо отступить от стандартного подхода MVC, так как использование обычного MVC-подхода может быть затруднено или просто не нужно.
Select2 может работать как со статическими наборами вариантов выбора, так и получать данные от внешних источников, имеет широко настраиваемые форматы отображения с использованием картинок и т.д. Формат данных представлен в виде JSON, поэтому наша задача разработать такой EntryPoint, чтобы на выходе получилась нужная структура JSON.
В основе SuiteCRM заложена модель MVC, и все действия предполагают обращение к action контроллера. Бывает, что необходимо отступить от стандартного подхода MVC, так как использование обычного MVC-подхода может быть затруднено или просто не нужно.
+1
Пока гром не грянул, или Непрерывность и ГОСТ Р 53647.4-2011/ISO/PAS 22399:2007
12 мин
2.7KНесколько лет назад в подмосковном офисе одной из компаний произошла разгерметизация газовой системы пожаротушения. Угроза для жизни и здоровья людей была более чем реальная. В результате ЧС 1 человек погиб, 13 с разной степенью отравления попали в больницу, 60 были эвакуированы. Подобные угрозы весьма актуальны – ведь точно такими же системами пожаротушения сегодня оборудованы десятки административных и офисных зданий в Москве, Санкт-Петербурге и других городах.
Возможна и другая ситуация: банк прерывает работу из-за угрозы взрыва. Тревожный сигнал может поступить от злоумышленника или хулигана, а может – от сотрудников банка, если они обнаружат в помещении подозрительный предмет или свёрток. Представляет ли он опасность, выяснится позже, однако действия по инструкции в такой ситуации строго обязательны.
Еще один экстремальный вариант: в офис организации бросили дымовую шашку. Может обойтись и без пострадавших, но паника обеспечена. Струйки дыма, пробивающиеся в коридор, и шум в соседнем помещении вряд ли кого-то оставят равнодушным. И уж тем более не поспособствуют рабочей атмосфере. Кому-то может стать плохо просто от волнения, а где взять лекарства, неизвестно.
Возможна и другая ситуация: банк прерывает работу из-за угрозы взрыва. Тревожный сигнал может поступить от злоумышленника или хулигана, а может – от сотрудников банка, если они обнаружат в помещении подозрительный предмет или свёрток. Представляет ли он опасность, выяснится позже, однако действия по инструкции в такой ситуации строго обязательны.
Еще один экстремальный вариант: в офис организации бросили дымовую шашку. Может обойтись и без пострадавших, но паника обеспечена. Струйки дыма, пробивающиеся в коридор, и шум в соседнем помещении вряд ли кого-то оставят равнодушным. И уж тем более не поспособствуют рабочей атмосфере. Кому-то может стать плохо просто от волнения, а где взять лекарства, неизвестно.
+3
Сервер Huawei KunLun – наше тестирование
4 мин
9.1KСначала несколько слов об архитектуре KunLun – информации о ней в русскоязычном сегменте практически нет. KunLun создавался как High-End-платформа, соответственно все его компоненты дублируются (включая модули управления и контроллеров NUMA-узлов). Впрочем, дублированием компонентов High-End’ность сервера не ограничивается: решение позволяет без остановки ОС заменять не только PCIe-платы (это в принципе не ново), но и процессоры с памятью. Система проактивно даст знать, какие компоненты скоро могут выйти из строя, не дожидаясь самого сбоя. Заменить их можно будет без остановки ОС. На сегодня горячая замена процессоров и модулей памяти предусмотрена только в ОС EulerOS (CentOS от Huawei). Поддержку «из коробки» обещают в скором времени для RHEL и SLES.
+7
Huawei Connect 2016 Shanghai
3 мин
4.7KНа прошлой неделе в Шанхае прошла ежегодная конференция Huawei Connect, посвящённая достижениям одноименного вендора, его партнёров и клиентов. Вашему вниманию предлагается краткий обзор новинок, представленных в рамках этого мероприятия.
+9
Альтернативные технологии обеспечения высокой доступности приложений
5 мин
4.7KПри построении High Availability Configuration на базе оборудования RISC-платформ мы выбираем из весьма ограниченного набора кластерного ПО. В первую очередь это вендорские разработки – Oracle Solaris Cluster, PowerHA (IBM), Serviceguard (HP), а также Veritas Cluster Server. Последнее решение по факту является основным предлагаемым на данный момент вариантом построения кластерных конфигураций, причем для разных платформ – Oracle, IBM и т.д.
Однако мы решили не ограничиваться только этими разработками и поискать альтернативное кластерное решение для x86. Так был инициирован внутренний проект по тестированию кластерной конфигурации на базе ПО Pacemaker.
Однако мы решили не ограничиваться только этими разработками и поискать альтернативное кластерное решение для x86. Так был инициирован внутренний проект по тестированию кластерной конфигурации на базе ПО Pacemaker.
+1
Аппаратное ускорение корпоративных вычислений
7 мин
5.6K“Ускоренные вычисления” (Accelerated Computing) – модель вычислений, при которой в тандеме с традиционными CPU применяются узкоспециализированные сопроцессоры (“ускорители”). Основной задачей сопроцессоров является высокопараллельное выполнение интенсивной вычислительной нагрузки и высвобождение ресурсов CPU для других нужд приложения (“offloading”).
Хорошими примерами таких “ускорителей” могут служить GPU от NVIDIA или сопроцессоры Xeon Phi, без которых не обходится практически ни один проект в сфере научных или инженерных вычислений. Однако в корпоративном секторе подобные технологии практически не применялись (если не считать использование GPU в фермах виртуализации рабочих мест).
Хорошими примерами таких “ускорителей” могут служить GPU от NVIDIA или сопроцессоры Xeon Phi, без которых не обходится практически ни один проект в сфере научных или инженерных вычислений. Однако в корпоративном секторе подобные технологии практически не применялись (если не считать использование GPU в фермах виртуализации рабочих мест).
+8
Настраиваем связку Apache Zeppelin + Oracle
6 мин
14KДавно ищу удобный инструмент для выполнения ad hoc SQL-запросов в БД Oracle, с возможностью быстрого построения различных типов графиков на полученных данных. Все, что может облегчить оперативное создание отчетов, как говорится «на лету». Совсем недавно наткнулся на вот такой инструмент как Apache Zeppelin. Короткий обзор возможностей в документации на сайте и демо-видео показал, что это штука достаточно интересная и имеет смысл более плотно исследовать ее и настроить доступ из Apache Zeppelin к СУБД Oracle.
+8
Ускоряем OSB
4 мин
4.7KСтатья подготовлена Дмитрием Овчаренко, архитектором Департамента прикладных финансовых систем компании «Инфосистемы Джет»
Приступая к разработке прокси-сервиса на Oracle Service Bus, следует принимать во внимание условия использования этого сервиса. Например, если разрабатываемый процесс будет участвовать во множестве популярных операций или использоваться большим числом пользователей. В случае, например, запроса информации для первой страницы после логина пользователя на сайте следует сразу придерживаться соображений оптимального кода с точки зрения производительности.
В процессе написания трансформаций и всех обращений к путям внутри сообщения не поленитесь указать [1] после каждого узла в XPath
Это позволит обрабатывать выражение как обращение к единичным элементам структуры, а не к множественным, как это подразумевается в общем случае.
Предвидя проблему
Приступая к разработке прокси-сервиса на Oracle Service Bus, следует принимать во внимание условия использования этого сервиса. Например, если разрабатываемый процесс будет участвовать во множестве популярных операций или использоваться большим числом пользователей. В случае, например, запроса информации для первой страницы после логина пользователя на сайте следует сразу придерживаться соображений оптимального кода с точки зрения производительности.
В процессе написания трансформаций и всех обращений к путям внутри сообщения не поленитесь указать [1] после каждого узла в XPath
$Get_Client_Info_Output/ns1:ListOfContact[1]/ns1:Contact[1]/ns1:rName[1]
Это позволит обрабатывать выражение как обращение к единичным элементам структуры, а не к множественным, как это подразумевается в общем случае.
+7
ЦОД без «меди»
5 мин
16KСтатья подготовлена Всеволодом Воробьевым, руководителем направления ЦОД Центра сетевых решений компании «Инфосистемы Джет»
Весной этого года мы построили большой дата-центр для одного из крупнейших отечественных банков – ВТБ24. За один год мы выполнили полный комплекс работ: от формирования технического задания и разработки проектной документации до выполнения пуско-наладки и сдачи ЦОД. Дата-центр площадью 400 м² (без учета гидромодуля) рассчитан на 92 серверных/сетевых шкафа. Его общая мощность – 1600 кВт, максимальная полезная мощность – 800 кВт.
Рисунок 1 Общий план ЦОД
Весной этого года мы построили большой дата-центр для одного из крупнейших отечественных банков – ВТБ24. За один год мы выполнили полный комплекс работ: от формирования технического задания и разработки проектной документации до выполнения пуско-наладки и сдачи ЦОД. Дата-центр площадью 400 м² (без учета гидромодуля) рассчитан на 92 серверных/сетевых шкафа. Его общая мощность – 1600 кВт, максимальная полезная мощность – 800 кВт.
Рисунок 1 Общий план ЦОД
+12
Серверы Huawei: функциональное тестирование
3 мин
12KДанная статья подготовлена Андреем Сидоровым, инженером Unix Сервисного центра компании «Инфосистемы Джет».
Недавно у одного нашего заказчика было проведено тестирование оборудования Huawei, результатами которого мы бы и хотели с вами поделиться. Главной задачей тестирования являлась проверка основных функций оборудования Huawei и их совместимости с текущей инфраструктурой заказчика. На «растерзание» нам досталось достаточно большое количество железа ‒ стоечные серверы, блейд-корзины.
Серверы на тесты достались следующие:
Недавно у одного нашего заказчика было проведено тестирование оборудования Huawei, результатами которого мы бы и хотели с вами поделиться. Главной задачей тестирования являлась проверка основных функций оборудования Huawei и их совместимости с текущей инфраструктурой заказчика. На «растерзание» нам досталось достаточно большое количество железа ‒ стоечные серверы, блейд-корзины.
Серверы на тесты достались следующие:
- RH1288 V3 ‒ 1 unit, 2 socket
- RH2288 V3 ‒ 2 unit, 2 socket
- RH5885 V3 ‒ 4 unit, 4 socket
- RH8100 V3 ‒ 8 unit, 8 socket
+6
История о чертовых дублях
3 мин
3.2KДанная статья подготовлена Дмитрием Овчаренко, архитектором Департамента прикладных финансовых систем компании «Инфосистемы Джет»
Да будет унификация! Такое решение было принято при проектировании интеграционной архитектуры, связывающей CRM с другими внешними системами посредством шины на Oracle Service Bus. Помимо онлайн-интеграции на основе веб-сервисов, она принимает файлы, поступающие в систему, и вызывает веб-сервисы на стороне CRM, специально разработанные для каждого типа входящих данных.
Файл содержит множество записей, и по каждой требуется выполнить отдельный вызов сервиса на стороне CRM. Обработка файла производится в цикле по записям. На каждый вызов сервиса уходит по 5 секунд – это довольно много, но для выполнения поставленных требований вполне хватало. Процесс обработки вызова веб-сервиса в CRM предварительно проверяет запись на дубль, затем выполняет требуемую бизнес-логику и создает запись в БД.
Но «внезапности» могут возникнуть в непредвиденных моментах «шиномонтажа». На промышленных объемах данных в базе CRM стали появляться дубли. Мы выяснили, что источник может почему-то отправить большой файл повторно (сразу после того, как он будет подхвачен файловым proxy-сервисом и помещен в Stage-папку). Причем отставание между вызовами веб-сервисов, создающих дубли, настолько мало, что в момент второго вызова данные в первом еще не закоммичены, и проверка на стороне CRM не успевает срабатывать.
Да будет унификация! Такое решение было принято при проектировании интеграционной архитектуры, связывающей CRM с другими внешними системами посредством шины на Oracle Service Bus. Помимо онлайн-интеграции на основе веб-сервисов, она принимает файлы, поступающие в систему, и вызывает веб-сервисы на стороне CRM, специально разработанные для каждого типа входящих данных.
Файл содержит множество записей, и по каждой требуется выполнить отдельный вызов сервиса на стороне CRM. Обработка файла производится в цикле по записям. На каждый вызов сервиса уходит по 5 секунд – это довольно много, но для выполнения поставленных требований вполне хватало. Процесс обработки вызова веб-сервиса в CRM предварительно проверяет запись на дубль, затем выполняет требуемую бизнес-логику и создает запись в БД.
Но «внезапности» могут возникнуть в непредвиденных моментах «шиномонтажа». На промышленных объемах данных в базе CRM стали появляться дубли. Мы выяснили, что источник может почему-то отправить большой файл повторно (сразу после того, как он будет подхвачен файловым proxy-сервисом и помещен в Stage-папку). Причем отставание между вызовами веб-сервисов, создающих дубли, настолько мало, что в момент второго вызова данные в первом еще не закоммичены, и проверка на стороне CRM не успевает срабатывать.
+4