Файл: Технология «клиент-сервер» (Теоретические аспекты технологии «Клиент – сервер»).pdf
Добавлен: 15.05.2023
Просмотров: 199
Скачиваний: 3
Отличительной чертой функционирования АБС является необходимость обработки больших объемов данных в сжатые сроки. При этом основная тяжесть падает на операции ввода, чтения, записи, передачи данных. Это предъявляет весьма жесткие требования к производительности ОС, СУБД и средств передачи данных. Кроме того, значительные объемы информации должны быть доступны в оперативном режиме для обеспечения возможностей анализа, прогнозирования, контроля и прочего. Поэтому базовые средства должны быть в состоянии поддерживать доступ к большим (и постоянно возрастающим) объемам данных без потери производительности.
Базовые средства используются для обеспечения эксплуатации АБС, для разработки прикладной части программных средств. Базовыми являются ОС, СУБД и другие программные средства системного назначения. В их окружение, под их действием функционируют прикладные программы.
Наличие в спектре базовых средств сетевых функций является непременным атрибутом современных АБС. Сетевые функции придают системе свойства многоуровневости и многозвенности, а также обеспечивают возможность объединения различных программных платформ (Linux, FreeBSD, Windows, Unix и другие) и, как следствие, возможность гибкого расширения и наращивания системы – дополнения ее новыми рабочими системами, новыми серверами различных классов.
На современном этапе развития АБС все большее распространение получает рассредоточенная (распределенная) обработка информации. Этому способствует бурное развитие компьютерной техники, снижение ее стоимости, простота в обслуживание и эксплуатации.
Структурно такие АБС реализуются как некоторая сеть (вычислительная система), объединяющая посредством каналов передачи данных серверное оборудование, терминалы, другие периферийные устройства.
Создание информационных систем для крупных банков строится на основе более мощной центральной серверной системы и относительно более слабых «серверов». На базе сетевых ПЭВМ формируются система взаимосвязанных специализированных АРМ.
Создаются АРМы различных уровней управления – управляющих, начальников управлений, руководителей подразделений, других работников, занятых преобразованием информации.
Учитывая конкретное целевое назначение АРМ, основным принципом, закладываемым в их разработку, являются АРМы различных уровней и назначений объединяются в вычислительные банковские сети (ВС).
ВС требуют интеграции информационных потоков, и в частности, организации информации в виде совокупности БД. Существуют различные инструментальные средства для поддержания и управления БД – это прежде всего различные системы управления БД (СУБД). Структура БД в составе сети АРМ должна допускать простое расчленение ее на подбазы, размещаемых на отдельных АРМ и обеспечить при этом простоту доступа к любой подбазе с учетом существующей системы санкционированного доступа.
Использование АРМ в рамках АБС предполагает создание такой структуры, которая обеспечивает функционирование подсистем в АБС, обеспечение связей между ними, интерфейсов АРМ с пользователями и техническими средствами, взаимодействие программных и информационных средств, используемых в АБС и АРМ.
Важнейшими факторами, влияющими на функциональные возможности АРМ в составе АБС являются состав технических средств, их архитектура и набор базового (системного) ПО на основе которого строится прикладная часть системы.
Создание распределенных систем на основе локальных сетей с высокопроизводительным ЭВМ, выполняющими роль серверов и ПЭВМ в качестве АРМ (рабочих станций – основное современное направление развития банковских систем. Одним из таких является Автоматизированное Рабочее Место «Клиент-Сбербанк».
Клиент-сервер (англ. Client-server) — сетевая архитектура, в которой устройства являются либо «клиентами», либо - «серверами». «Клиентом» (front end) является запрашивающая машина (обычно ПК), «сервером» (back end) — машина, которая отвечает на запрос. Оба термина (клиент и сервер) могут применяться как к физическим устройствам, так и к программному обеспечению.
Утверждение, что некоторая информационная система имеет архитектуру «клиент-сервер», означает, что прикладная составляющая этой системы имеет распределенный характер и состоит из двух взаимосвязанных компонент, одна из которых (клиент) формирует и посылает запросы высокого уровня другой компоненте (серверу), задача которой состоит в обслуживании этих запросов.
Глава 2 Пример использования технологии «клиент-сервер» при разработке информационного киоска в банке
2.1 Анализ требований со стороны банка. Архитектура программного комплекса
Использование информационного киоска для публикации информации об услугах банка накладывает дополнительные требования к его оборудованию и программному обеспечению. Для обеспечения безопасности передаваемых данных требуется использовать:
• защищённые протоколы передачи данных;
• оригинальное программное обеспечение;
• надёжные средства разработки (операционная система - Microsoft Windows, среда разработки - Visual Studio 2012, язык программирования – C#).
Отличительной особенностью информационного киоска для публикации банковских услуг должно являться наличие считывателя пластиковых карт, позволяющее с помощью банковской карты идентифицировать пользователя и предоставить ему персональноориентированную информацию.
В целом, банк обладает офисами различных типов:
• Офис А-типа: Головной офис. Обладает всей необходимой информацией.
• Офис Б-типа: Обладает высокоскоростным интернет-подключением к головному офису банка.
• Офис В-типа: Обладает низкоскоростным интернет-подключением к головному офису банка.
«Информационный киоск» является отдельным программным комплексом, используемым в банке. Обмен данными между программным комплексом и внутренними информационными системами банка (БД с аутентификационной информацией и т.д.) должен осуществляться через узкоспециализированные web-сервисы банка с использованием слабосвязанной архитектуры. Общая архитектура программного комплекса «Информационный киоск» в сетевой инфраструктуре банка представлена на рис. 1.
Рисунок 1 - Архитектура взаимодействия частей программного комплекса «Информационный киоск» и инфраструктуры банка
В целом, архитектура программного комплекса «Информационный киоск» является многозвенной. Первым звеном является клиентское приложение, работающее на самом киоске (терминале). Второе звено – web-сервер с соответствующим web-приложением (расположенные либо на том же оборудовании, либо на отдельном web-сервере банка).
Третьим звеном программного комплекса является СУБД с базой данных об услугах банка.
Последним звеном являются уже существующие web-сервисы банка, позволяющие выполнять процедуру аутентификации пользователей по их банковским картам.
Благодаря использованию многозвенной архитектуры возможны различные конфигурации программного комплекса, подходящие для офисов различных типов:
• Конфигурация для офисов А,Б-типа: клиентское программное обеспечение программного комплекса «Информационный киоск» (интернет-браузер) работает на терминальном устройстве на территории банка. Клиентское приложение взаимодействует с web-сервером головного офиса банка, а web-сервер в свою очередь – с СУБД головного офиса банка.
• Конфигурация для офисов В-типа: клиентское программное обеспечение программного комплекса «Информационный киоск» (интернет-браузер) работает на терминальном устройстве на территории банка. Клиентское приложение взаимодействует с web-сервером расположенным также на терминальном устройстве.
Web-сервер, в свою очередь, взаимодействует с локальной версией СУБД и для операций аутентификации клиентов выполняет запросы к СУБД головного офиса банка. Для поддержки актуальности контента локальной СУБД периодически выполняется синхронизация информации локальной СУБД и СУБД головного офиса.
Синхронизация информации между СУБД головного офиса и СУБД удалённого офиса выполняется средствами репликации СУБД MS SQL Server.
Предложенная архитектура позволяет подключать и прочие типы клиентов к разработанному программному комплексу. В перспективе возможна разработка android приложения, взаимодействующего посредством сети интернет с web-сервером головного офиса и выполняющего все аналогичные операции
2.2 Проектирование БД
Весь контент программного комплекса «Информационный киоск» хранится в соответствующих структурах БД. Программный комплекс «Информационный киоск» предназначен предоставлять информацию об услугах банка с помощью текстовой, графической, аудио и видеоинформации. На рис.2 представлен фрагмент ER-диаграммы БД программного комплекса, выполненный с помощью специализированного case-средства Sybase Power Designer.
Рисунок 2 - Фрагмент ER-диаграммы модели данных программного комплекса
В структуре БД следует выделить такие сущности как «Шаблоны страниц», «Страницы», «Логотипы», «Баннеры», «Кнопки», «Контент», «Формулы» и т.д. Сущность «Шаблон» задаёт общие характеристики для групп страниц, сущность «Страницы» хранит сведения об экземплярах отдельных информационных страниц. Сущность «Контент» описывает информацию, которая может располагаться на той или иной странице (статичный html-документ, pdf-документ, flash-анимация, видеоролик и т.д.). Сущность «Формулы» хранит символьные последовательности, задающие формулы расчёта параметров кредитов (автокредит, ипотечный кредит, потребительский кредит и т.д.).
Таким образом, спроектированные структуры БД позволяют полностью хранить всю требуемую информацию об услугах банка.
2.3 Алгоритмическое обеспечение программного комплекса
Основной объём алгоритмического обеспечения программного комплекса «Информационный киоск» сосредоточен в клиентском web-приложении, хранящемся на web-сервере. Основными активными действиями пользователя программного комплекса «Информационный киоск» являются нажатия тех или иных кнопок на отображаемых страницах. При запросе нажатии на той или иной кнопки происходит передача команды web-приложению на отображение другой страницы. При построении страницы, в первую очередь происходит выяснение шаблона данной страницы, затем происходит загрузка данных шаблона, страницы и принадлежащих ей кнопок и данных контента. Таким образом, при каждом активном действии пользователя происходит сетевое взаимодействие с сервером и получение с него очередной порции информации.
Одним из алгоритмов программного комплекса является алгоритм построения плана выплат по кредиту на основании хранящихся в БД формул. Для решения этой задачи требуется в первую очередь выполнить распознавание формулы хранимой в БД, а затем уже по это формуле выполнить расчёт параметров выплат по кредиту. Алгоритмическое обеспечение программного комплекса «Информационный киоск» может работать с формулами, состоящими из следующих арифметических примитивов: сложение, вычитание, умножение, деление, возведение в степень, операторные скобки. Первой задачей распознавания формулы является корректное определение порядка действий. Для этого происходит расстановка действий следующим способом:
• Операции «вычитания» и «сложения» отмечаются весом 1
• Операции «деления» и «умножения» отмечаются весом 2
• Операции «возведение в степень» отмечаются весом 3
• Скобки, охватывающие операцию, повышают её вес на 10
Рассмотрим работу данного алгоритма расстановки порядка действий на примере тестовой формулы вида: Sum = 1 × ( 2 + 3 ) ^ 4 / 5, где есть 5 чисел и арифметические примитивы.
В формуле присутствуют 5 арифметических примитивов: умножение, сложение, возведение в степень, деление, операторные скобки. Согласно вышеописанным правилам алгоритм расстановки порядка действий присвоит арифметическим примитивам следующие веса: умножение и деление = 2, возведение в степень = 3, сложение в операторных скобках = 11. Далее, алгоритм должен поочередно выполнять операции, начиная с операций наибольшим весом. Соответственно, в первую очередь будет выполнена операция сложения (результат операции = 5), затем операция возведения в степень (результат операции = 625), затем операция умножения и деления (результат операций =125). Такая расстановка порядка действий и итоговый результат являются правильными с арифметической точки зрения.