Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по ПСП.docx
Скачиваний:
25
Добавлен:
25.09.2019
Размер:
116.02 Кб
Скачать

4. Доступ к ресурсам и их разделение.

Под ресурсами понимаются аппаратура, ПО и данные. Разделение ресурсов требуется для более эффективного использования дорогостоящих ресурсов.

5. Отказоустойчивость. Система будет продолжать работу доже при возникновении неисправностей.

В.65 Программная реализация удаленного вызова процедур RMI

Удалённый вызов процедур (или Вызов удалённых процедур) — класс технологий, позволяющих компьютерным программам вызывать функции или процедуры в другом адресном пространстве (как правило, на удалённых компьютерах).

Реализация RPC технологии включает в себя два компонента: сетевой протокол для обмена в режиме клиент-сервер и язык сериализации объектов (или структур, для необъектных RPC).

Идея вызова удалённых процедур (Remote Procedure Call — RPC) состоит в расширении хорошо известного и понятного механизма передачи управления и данных внутри программы, выполняющейся на одной машине, на передачу управления и данных через сеть. Средства удалённого вызова процедур предназначены для облегчения организации распределённых вычислений и создания распределенных клиент-серверных информационных систем. Наибольшая эффективность использования RPC достигается в тех приложениях, в которых существует интерактивная связь между удалёнными компонентами с небольшим временем ответов и относительно малым количеством передаваемых данных. Такие приложения называются RPC-ориентированными.

Можно обозначить следующие проблемы и задачи, которые необходимо решить при реализации RPC:

  • Так как вызывающая и вызываемая процедуры выполняются на разных машинах, то они имеют разные адресные пространства, и это создает проблемы при передаче параметров и результатов, особенно если машины находятся под управлением различных операционных систем или имеют различную архитектуру (например, используется прямой или обратный порядок байтов).

  • В отличие от локального вызова удалённый вызов процедур обязательно использует транспортный уровень сетевой архитектуры (например TCP), однако это остается скрытым от разработчика.

  • Выполнение вызывающей программы и вызываемой локальной процедуры в одной машине реализуется в рамках единого процесса. Но в реализации RPC участвуют как минимум два процесса — по одному в каждой машине.

В.66 Веб-служба, веб-сервис — идентифицируемая веб-адресом программная система со стандартизированными интерфейсами. Веб-службы могут взаимодействовать друг с другом и со сторонними приложениями посредством сообщений, основанных на определённых протоколах (XML, JSON и т. д.). Веб-служба является единицей модульности при использовании сервис-ориентированной архитектуры приложения

Используемые стандарты:

  • XML: Расширяемый язык разметки, предназначенный для хранения и передачи структурированных данных;

  • SOAP: Протокол обмена сообщениями на базе XML;

  • WSDL: Язык описания внешних интерфейсов веб-службы на базе XML;

  • UDDI: Универсальный интерфейс распознавания, описания и интеграции (Universal Discovery, Description and Integration). Каталог веб-служб и сведений о компаниях, предоставляющих веб-службы во всеобщее пользование или конкретным компаниям.

Достоинства веб-служб

  • Веб-службы обеспечивают взаимодействие программных систем независимо от платформы

  • Веб-службы основаны на базе открытых стандартов и протоколов.

Недостатки веб-служб

Меньшая производительность и больший размер сетевого трафика по сравнению с технологиями RMI, CORBA, DCOM за счёт использования текстовых XML-сообщений.

В.67 Протоколы взаимодействия веб-служб

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

Протокол IP определяет форматы пакетов, посылаемых через Internet, механизмы, используемые для передачи пакетов через различные виды сетей, а также маршрутизаторы от источника до места назначения.

Каждый хост, подключенный к Internet, имеет уникальный адрес, называемый IP-адресом. IP-адрес ни что иное как 32-битовое число, обычно представляемое при помощи точечной десятичной нотации, например, 129.2.0.37. Здесь каждое из четырех чисел (каждое из которых может принимать значения от 0 до 255) представляет 8 бит 32-битового адреса. Все 32 бита разделены на две части: префикс и суффикс. Префикс указывает на сеть, а суффикс - на хост внутри сети. Количество бит, отведенных на префикс, определяет количество уникальных сетевых номеров, а количество бит суффикса - количество хостов в сети. Единица информации, передаваемая при помощи протокола IP, называется IP-дейтаграммой (IP datagram).

Протокол TCP обеспечивает основанный на соединении обмен данными между процессами, выполняющимися на хостах сети, для которого характерно высокая надежность, управление потоком и сквозная передача. Протокол TCP гарантирует, что данные будут получены в том же порядке, в котором они были отправлены, и что никакие данные не потеряются. TCP позволяет двум объектам, находящимся на концах соединения, обмениваться информацией одновременно, т.е. в полнодуплексном режиме. TCP обеспечивает потоковый интерфейс, т.е. принимает от приложения непрерывный поток байтов, который должен отправляться через соединение. Протокольная единица обмена, которой обмениваются на уровне протокола TCP, называется сегментом (segment). Заголовок сегмента в TCP имеет длину 20 байт. Протокол TCP посылает сегменты в рамках 1Р-дейтаграмм.

Протокол передачи Гипертекста (HTTP) - протокол прикладного уровня для распределенных, совместных, многосредных информационных систем. HTTP также используется как обобщенный протокол связи между агентами пользователей и прокси-серверами/шлюзами или другими сервисами Интернета, включая такие, как SMTP, NNTP, FTP.

В.68 Java Platform, Enterprise Edition (Java EE) — набор спецификаций и соответствующей документации для языка Java, описывающей архитектуру серверной платформы для задач средних и крупных предприятий.

Спецификации детализированы настолько, чтобы обеспечить переносимость программ с одной реализации платформы на другую. Основная цель спецификаций — обеспечить масштабируемость приложений и целостность данных во время работы системы. J2EE во многом ориентирована на использование её через веб как в интернете, так и в локальных сетях. Вся спецификация создаётся и утверждается через JCP (Java Community Process) в рамках инициативы Sun Microsystems Inc.

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

Популярности J2EE также способствует то, что Sun предлагает бесплатный комплект разработки, SDK, позволяющий предприятиям разрабатывать свои системы, не тратя больших средств. В этот комплект входит сервер приложений с лицензией для разработки.

Java EE включает в себя стандарты следующих технологий:

  • Веб-сервисы

  • Сервлеты (javax.servlet и javax.servlet.http)

  • Java Server Pages

  • Enterprise JavaBeans (javax.ejb.*)

  • Java Connector API (javax.resource)

  • Java Message Service (javax.jms.*)

  • Интерфейс для обработки XML

  • Java Architecture for XML Binding (javax.xml.bind)

  • Java Authorization Contract for Containers

  • JavaServer Faces (javax.faces.component.html)

  • Другие технологии, полезные для разработки бизнес-приложений.

Сервер приложений J2EE (часто называемый J2EE-контейнер) — это реализация системы в соответствии со спецификацией J2EE, обеспечивающая работу модулей с логикой конкретного приложения.