Комплексное исследование многоуровневой архитектуры сочинение пример

ООО "Сочинения-Про"

Ежедневно 8:00–20:00

Санкт-Петербург

Ленинский проспект, 140Ж

magbo system

Сочинение на тему Комплексное исследование многоуровневой архитектуры

Многоуровневая

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

Многоуровневая архитектура

Клиент-серверная архитектура – это программная архитектура, в которой различные программные компоненты целенаправленно организованы на разных уровнях для обеспечения большего количества функций в системе. В этой архитектуре клиент запускает приложение, бизнес-логику и логику представления, затем сервер обрабатывает постоянство данных (Group, 2008). Поскольку клиент и сервер обмениваются данными, они обеспечивают безопасность, аутентификацию и защиту данных на основе ролей в распределенных системах, которые поддерживают параллелизм. Дополнительная информация показывает существование трехуровневых архитектур, которые состоят из уровня управления данными, который включает в себя один или несколько серверов баз данных, уровень приложений или бизнес-логику и уровень клиента, который является частью интерфейса, являющейся результатом повторного применения клиентом серверная парадигма. Двухуровневая архитектура может быть разработана таким образом, чтобы сервер базы данных был отделен от сервера презентаций / приложений.

Для этого есть несколько плюсов и минусов, так как следующие плюсы включают в себя удобство, позволяют специализацию сервера баз данных, а минусы включают в себя то, что он менее масштабируемый, трудно защищаемый и более дорогой (Baranovic, Mackala, & Kranjcec , 2004). Разделение сервера базы данных позволяет ему стать более специализированным, однако по-прежнему крайне сложно масштабировать приложение, чтобы защитить серверы межсетевыми экранами и зонами безопасности. Тем не менее, вы все равно можете подвергать свое приложение высоким рискам безопасности. N-уровневая структура разделяет функциональность приложения на три независимых уровня, обеспечивая более простую интеграцию с основными бизнес-системами и другими приложениями электронного бизнеса, включая Logic Presentation Logic, которая обычно размещается на интерфейсных веб-серверах, Layer 2 Business Logic, которая размещается на приложениях среднего уровня или серверах общего назначения, уровень 3 «Управление базами данных», размещенных на внутренних серверах баз данных (Peter M. Mell, 2010). При правильной реализации аппаратное и программное обеспечение для каждого из трех уровней можно масштабировать и обновлять независимо. Разбиение облегчает интеграцию новых приложений в среду. Следовательно, код приложения больше не нужно создавать заново, когда добавляется новый пользовательский интерфейс или когда транзакция связана с другим приложением. Предприятия могут расширять преимущества архитектуры N-уровня, устанавливая стандартизированные аппаратные и программные решения на каждом уровне. При правильной реализации этот процесс приводит к созданию меню общих служб, которые ИТ-специалисты могут использовать при планировании, разработке и развертывании новых приложений.

Повторное использование основных компонентов ускоряет разработку приложений, интеграцию, сокращает объем технического обслуживания и поддерживает затраты за счет упрощения вычислительной среды (Kutvonen, 2012). В двухуровневой архитектуре модели приложений обещали масштабируемость и функциональность, однако с ростом числа пользователей усложнялось предоставление услуг отдельным пользователям, что приводило к серьезным ограничениям. Процессы модель клиент-сервер в распределенной системе делятся на две группы. Сервер – процесс, который реализует конкретную службу, такую ​​как служба файловой системы или служба базы данных. Клиент – процесс, который запрашивает услугу у сервера, отправляя ему запрос и затем ожидая ответа сервера, это взаимодействие клиент-сервер также называется запросом-ответом. Для реализации этого используются методы «меньше соединения» (UDP) и «Ориентированные на соединение методы» (TCP), возникают проблемы со связью при установке и разрыве соединения, поскольку это обходится дорого, особенно если сообщения с запросами и ответами малы (Алатало, Ярвеноя, Карвонен, Керонен, & Kuvaja, 2006).

Многоуровневая архитектура клиент-сервер является прямым следствием разделения приложений на пользовательский интерфейс, компоненты обработки и уровень данных. Разбивая функциональность кода приложения на слои, это помогает в повторном использовании кода, но не делает архитектуру автоматически расширяемой за счет распределения кода по нескольким машинам. Уровни в основном используются для описания разделения кода приложения на нескольких машинах (Bouchenak, 2008). Многоуровневое размещение подразумевает размещение модулей кода на разных машинах в среде распределенного сервера. Если код приложения уже находится в слоях, это делает его намного проще. Код, который наиболее тесно взаимодействует с пользователем, часто размещается на уровне представления, который является интерфейсом. Второй уровень, который содержит бизнес-логику приложения и логику доступа к данным, называется уровнем приложения. Третий уровень часто содержит базу данных или сам источник данных, называемый уровнем базы данных (Systems, 2009). Различные уровни напрямую связаны с логической организацией приложений. Во многих бизнес-средах распределенная обработка приравнивается к организации клиент-серверного приложения в качестве многоуровневой архитектуры. Этот тип распределения известен как вертикальное распределение, состоящее из n-уровневых приложений. Характерной особенностью вертикального распределения является то, что оно достигается размещением логически разных компонентов на разных машинах. С точки зрения управления системой вертикальное распределение помогает в этом, функции логически и физически распределены по нескольким машинам, где каждая машина приспособлена для определенной группы функций (Intel Business Center, 2004).

Хранение данных / Доступ к данным

В основном базовые компоненты системы интеллектуального анализа данных включают пользовательский интерфейс, службы интеллектуального анализа данных, сами данные и службы доступа к данным. В архитектуре клиент-сервер инструмент извлечения данных лежит на клиенте, доказывая, что нет необходимости копировать данные в него, поскольку приложение может выбрать загрузку частей данных на разных этапах вычислений интеллектуального анализа данных (Rantzau & Schwarz, 2011) , Центры обработки данных должны выполнять различное серверное программное обеспечение, которое требует различных системных ресурсов и характеристик, что приводит к различению высокоскоростных вычислительных систем с использованием дублированных программ, которые способны выполнять симметричные задания, чтобы максимизировать параллелизм (Yu Wang, C., Ren К., Лу, В., 2010). Архитектуры мобильных приложений можно смоделировать с точки зрения архитектуры клиент-сервер. Клиенты всегда могут быть подключены, частично подключены или никогда не подключены к серверу. Код на клиенте или сервере может быть многоуровневым. Клиент может иметь от нуля до трех слоев, а сервер – от одного до трех слоев. Мобильные клиентские устройства обычно состоят из тонких клиентов или толстых клиентов.

Архитектура сервера может иметь от одного до трех уровней. Существуют преимущества и недостатки, связанные с разработкой архитектур с различными уровнями, например, когда клиент всегда подключен к серверу, можно создать тонкий клиент и архитектуру сервера без кода на клиенте. Если клиент частично подключен, толстому клиенту могут потребоваться хорошие принципы архитектурного проектирования, такие как доступность и масштабируемость. (Шульц, 2011)

Нагрузки

Рабочие нагрузки могут называться назначениями, которые относятся ко всем входным данным, таким как транзакции, услуги и передачи данных, которые передаются и обрабатываются электронной инфраструктурой. Существует два типа пользователей, которые характеризуются как конечные пользователи, которые взаимодействуют с пользовательским интерфейсом приложений и другими программными системами, взаимодействующими с API. Рабочая нагрузка может быть просто описана как максимальное количество одновременных пользователей, которые могут генерировать запросы в данный интервал времени. Они имеют динамичную природу, поскольку они могут внезапно расти или уменьшаться в результате взаимодействия с пользователем, поэтому их описывают с точки зрения качественных и количественных признаков (Brief, 2014). Интерактивная рабочая нагрузка состоит из задач обработки, включенных в короткий список, которые отправляются несколькими одновременными пользователями, тогда как пакетная рабочая нагрузка состоит из громких долгоживущих задач. Облачные рабочие нагрузки представляют собой совокупность многих приложений и сервисов, каждый из которых характеризуется достижениями и ограниченностью ресурсов, указанной в соглашении об уровне обслуживания. Они состоят из потока заданий и запросов, которые отправляются с нерегулярными интервалами, что делает процесс прибытия детерминированным. В функции модели клиент-сервер это когда клиенты взаимодействуют, запрашивая услуги серверов, а сервер предоставляет набор услуг, которые он может измерить с помощью использования функций. Надежность означает, что рабочие нагрузки могут успешно завершаться в определенный период времени (Calzarossa et al., 2016).

Основная ключевая проблема, с которой сталкиваются облачные среды, заключается в том, что в результате отсутствия общедоступных значительных измерений рабочей нагрузки ее пользователи и поставщики могут неохотно раскрывать информацию или данные, касающиеся их соответствующих рабочих нагрузок, чтобы избежать конкуренции и потери конфиденциальной информации. , Сбои также могут возникать из-за наличия различных типов событий, таких как программные ошибки, переполнения, тайм-ауты и исключения. Эти типы логики могут быть более или менее тяжелыми с точки зрения требуемого времени обработки. Поскольку уникальный сервер, на котором размещается логика нескольких типов, может страдать от проблем масштабируемости из-за большой рабочей нагрузки, такой как одновременные веб-клиенты. Решение состоит в том, чтобы разделить различные типы согласованности на разных серверах и реализовать многоуровневую архитектуру.

Система управления расписанием

Архитектуры приложений часто моделируются, чтобы выделить или проиллюстрировать общую структуру программного обеспечения, такую ​​как код приложения, платформа и оборудование, включая клиентские, серверные и сетевые устройства. Хотя существует множество возможных комбинаций программного и аппаратного обеспечения, архитектуры приложений часто попадают в серию распознаваемых шаблонов. Архитектуры приложений обычно моделируются в терминах клиент-серверной архитектуры, в которой одно или несколько клиентских устройств запрашивают информацию у серверного устройства. Сервер обычно отвечает запрошенной информацией. Функциональность кода приложения не обязательно одинакова во всем приложении. Некоторые разделы кода приложения лучше подходят для обработки пользовательского интерфейса, тогда как другие разделы разрабатываются для управления бизнес-логикой или для связи с базой данных или внутренними системами. Расслоение описывает разделение труда внутри шифра приложения на одной машине. Слои часто представляют собой модули кода, размещенные в разных папках или каталогах на клиенте или сервере. В коде на стороне клиента, как правило, от нуля до трех уровней кода приложения, а в коде на стороне сервера, как правило, от одного до трех уровней кода приложения. Отчасти это связано с хорошим дизайном программного обеспечения, которое способствует повторному использованию кода, отчасти с вопросом безопасности и удобства. Клиент с нулевым уровнем кода по существу не имеет пользовательского кода приложения. Этот тип клиента обычно называют тонким клиентом и существует в архитектуре клиент-сервер, если сервер содержит весь пользовательский код приложения. Клиент с одним-тремя уровнями кода приложения обычно называется толстым клиентом. Сервер также может иметь от одного до трех уровней пользовательского кода приложения.

Однако вы не можете иметь нулевые уровни кода на сервере по определению. Уровень кода, который наиболее тесно взаимодействует с пользователем, часто называют уровнем представления. Второй уровень часто называют бизнес-уровнем, поскольку он обычно обрабатывает бизнес-логику кода. Третий уровень часто называют уровнем доступа к данным, он обрабатывает связь с базой данных или данными. Существующие системы. В литературе было предложено большое количество вариантов проблемы хронометража, которые отличаются друг от друга в зависимости от типа учреждения (университета или школы) и типа ограничений. Мы классифицируем проблему с расписанием по трем основным классам: Расписание по школам: еженедельное расписание всех классов в школе, избегая учителей, посещающих два класса одновременно, и наоборот; Расписание курсов: еженедельное расписание всех лекций ряда университетских курсов, сводящее к минимуму частичное совпадение лекций с общими студентами; График сдачи экзаменов: составление расписания экзаменов для ряда университетских курсов, избежание дублирования экзаменов на курсах, в которых участвуют обычные студенты, и максимально возможное распределение экзаменов для студентов. Разрешение конфликтов и координация скорости движения поездов для решения проблем, связанных с расписанием. Эксперименты были основаны на эффективности интеллектуальной системы обнаружения конфликтов и системы разрешения, чтобы уменьшить количество последовательных задержек путем выявления потенциальных конфликтов и изменения расписания движения поездов. Такая система реализована в управлении трафиком, чтобы повысить надежность при низких затратах по сравнению со строительством новой инфраструктуры, которая была бы дорогостоящей. Они разработали динамическую модель, которая обновляет профили скорости поездов соответственно на основе аспекта сигналов. На каждом этапе итеративного перепланирования проблема обнаружения и разрешения конфликтов решается, и они проверяют, перекрываются ли пути поездов.

Они также могли бы сделать это, замедляя поезда, где наложения хорошо известны. Они использовали алгоритм, который завершается после конечных итераций, давая убедительное бесплатное решение по расписанию (Pranzo, 2005). Система управления движением для оптимизации движения в реальном времени на железных дорогах. В результате возросшей интенсивности и сложности железнодорожных систем на рынке требуются новые методы для ограничения контроля движения в реальном времени. TMS учитывает как фактическое положение, так и скорость каждого поезда в окрестностях. Эта система решает проблемы, обнаруженные в крупных железнодорожных сетях, которые имеют систему сигнализации с фиксированной или подвижной блокировкой. Архитектура TMS была получена путем объединения двух ключевых понятий – декомпозиции, которая применяется в больших сетях в локальных областях и модульности, чтобы иметь возможность использовать один метод для управления различными системами. TMS использует модель планирования и маршрутизации поездов и модуль регулирования скорости, эти модели были сконструированы таким образом, чтобы решать проблемы с расписанием, когда время отклика является критическим фактором (Mazzarello & Ottaviani …

Зарегистрируйся, чтобы продолжить изучение работы

    Поделиться сочинением
    Ещё сочинения
    Нет времени делать работу? Закажите!

    Отправляя форму, вы соглашаетесь с политикой конфиденциальности и обработкой ваших персональных данных.