Вызов удаленных процедур (rpc)

      Комментарии к записи Вызов удаленных процедур (rpc) отключены

Лекция 2

2.1 Вычисления в архитектуре клиент-сервер.Структуры клиент-сервер.
Клиент-сервер_____________________________________________________
______________________________________________________________________________________________________________________________________
расположены на разных вычислительных машинах и взаимодействуют между собой через _______________посредством________________, но их можно расположить также и на одной машине.
Клиент-___________________________________________________________
__________________________________________________________________
Сервер-___________________________________________________________
__________________________________________________________________

_________________________________________________________________________________________________________________________________________________________________________________________________________
___________________________________________________________________
_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Функции клиента:
1._________________________________________________________________
2._________________________________________________________________
3._________________________________________________________________
Функции сервера:
1._________________________________________________________________
2._________________________________________________________________
3.________________________________________________________________

4.________________________________________________________________________
5.________________________________________________________________________
6.________________________________________________________________________
Достоинства:______________________________________________________________
____________________________________________________________________________________________________________________________________________________
Недостатки:_______________________________________________________________
____________________________________________________________________________________________________________________________________________________
Многоуровневая архитектура «клиент-сервер»-______________________________
____________________________________________________________________________________________________________________________________________________
Сеть с выделенным сервером (cliet/server network)____________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

2.2 Двухзвенная и трехзвенная архитектуры
Двухзвенная архитектура-_________________________________________________
_________________________________________________________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
____________________________
__________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Трехзвенная архитектура __________________________________________________
__________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
______________________________________________________________________________________________________________________________________ Запрос пользователя в подобных системах последовательно обрабатывается клиентской частью системы, сервером логики приложения и сервером баз данных.

2.3 Распределенная передача сообщений
Единственным отличием ___________________ систем от централизованных является _____________________________..
Основой этого взаимодействия может служить только ___________________
__________________________________________________________________. В самом простом случае системные средства обеспечения связи могут быть сведены к ________ основным системным вызовам (______________), один — для _______________, другой — для _____________________.
В частности, эффективность коммуникаций в сети зависит от_______________________________, от того, является ли системный вызов _______________________________, какие выбраны способы буферизации сообщений и насколько надежным является ____________________________.
Способы адресации
Для того, чтобы послать сообщение, необходимо _______________________. В очень простой сети адрес может задаваться в виде _____________________
Варианты адресации:
1.Использование физических адресов сетевых адаптаров__________________
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
2.Назначение процессу уникального адреса______________________________
_________________________________________________________________________________________________________________________________________________________________________________________________________

3.Назначение процессам уникальных индетификаторов____________________
_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Хотя эта схема и прозрачна, но широковещательные сообщения перегружают систему. Такой перегрузки можно избежать, выделив в сети специальную машину для отображения высокоуровневых символьных имен. При применении такой системы процессы адресуются с помощью _____________________, и в программы вставляются ________________, а не номера машин или процессов.
4.Использование специальной аппаратуры____________________________________
______________________________________________________________________________________________________________________________________________________________________________________________________________________________

Блокирующие и неблокирующие примитивы (синхронные и асинхронные вызовы).
Примитивы бывают блокирующими и неблокирующими, иногда они называются соответственно _________________________________________________________. При использовании ___________________________________, процесс, выдавший запрос на его выполнение, __________________________________________________. При использовании ___________________________________ управление возвращается вызывающему процессу немедленно, еще до того, как требуемая работа будет выполнена.
Передача последовательности сообщений с помощью неблокирующихся примитивов
1.Первый подход:__________________________________________________________
______________________________________________________________________________________________________________________________________________________________________________________________________________________________
2.Второй подход:___________________________________________________________
______________________________________________________________________________________________________________________________________________________________________________________________________________________________
Тайм-аут _________________________________________________________________
____________________________________________________________________________________________________________________________________________________________________________________________________________________________
Буферизуемые и небуферизуемые примитивы
Примитивы,___________________________________________ являются небуферизуемыми примитивами. Это означает, что вызов ПОЛУЧИТЬ сообщает ядру машины, на которой он выполняется, адрес буфера, в который следует поместить пребывающее для него сообщение.
Условия работы:___________________________________________________________
____________________________________________________________________________________________________________________________________________________

________________________________________________________________________________________________________________________Процесс, который заинтересован в __________________________, обращается к ядру с запросом о создании для него почтового ящика и сообщает адрес, по которому ему могут поступать ______________________, после чего все сообщения с данным адресом будут помещены в_________________________. Такой способ часто называют_________________________________________

Вызов удаленных процедур (RPC)

Идея __________________(Remote Procedure Call — RPC) состоит в расширении ____________________________внутри программы, выполняющейся на одной машине, на передачу управления и данных через сеть.
Средства удаленного вызова процедур предназначены для________________
__________________________.
Характерными чертами __________________являются:
1.Асимметричность, ________________________________________________
__________________________________________________________________
2.Синхронность ____________________________________________________
__________________________________________________________________
Так как __________ не может рассчитывать на_____________________, то это означает, что параметры RPC не должны содержать _____________________
_______________________и что значения параметров должны копироваться с одного компьютера на другой.
Базовые операции RPC:
Чтобы понять работу RPC, рассмотрим вначале выполнение вызова локальной процедуры в обычной машине, работающей автономно. Пусть это, например, будет системный вызов
count=read (fd,buf,nbytes); где fd — целое число, buf — массив символов,
nbytes — целое число.
Выполнение вызова:
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Рис. . а) Стек до выполнения вызова read;
б) Стек во время выполнения процедуры;
в) Стек после возврата в вызывающую программу

____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________Идея, положенная в основу RPC, состоит в том, чтобы _________ _________________________________выглядящим по возможности также, как и вызов локальной процедуры. Другими словами — сделать RPC_________________: вызывающей процедуре не требуется знать, что вызываемая процедура находится на другой машине, и наоборот.
RPC достигает прозрачности следующим путем.:
______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Выполнения RPC
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Рис. Remote Procedure Call

________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________Если ни один из стабов не ожидает этот пакет, обработчик должен либо поместить его в буфер, либо вообще отказаться от него. Если имеется ожидающий стаб, то сообщение копируется ему. _________________________
___________________________________________________________________
Работа серверного стаба:
________________________________________________________________________________________________________________________________________
____________________________________________________________________

Рисунок 3 показывает______________________________, которую необходимо выполнить для каждого___________________, а рисунок 4 -_________________
__________________________________________________________________.__________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Рис. .3. Этапы выполнения процедуры RPC


Рис. 4. Распределение времени между 14 этапами выполнения RPC

Этапы выполнения RPС:
1._________________________________________________________________
2._________________________________________________________________
3._________________________________________________________________
4._________________________________________________________________
5._________________________________________________________________
6._________________________________________________________________
7._________________________________________________________________
8._________________________________________________________________
9._________________________________________________________________
10.________________________________________________________________
11.________________________________________________________________
12.________________________________________________________________
13.________________________________________________________________
14.________________________________________________________________

Семантика RPC в случае отказов

В идеале RPC должен функционировать правильно и в случае отказов. Рассмотрим следующие классы отказов:
1.Клиент не может определить_____________________________, например, в случае отказа нужного сервера, или из-за того, что программа клиента была скомпилирована давно и использовала старую версию интерфейса сервера. В этом случае в ответ на _________________поступает_____________________, содержащее________________.
2.____________________________________________. Самое простое решение — через определенное время повторить запрос.
3.Потеряно______________________________________. Этот вариант сложнее предыдущего, так как некоторые процедуры не являются идемпотентными. Идемпотентной называется процедура, запрос на выполнение которой можно повторить несколько раз, и результат при этом не изменится. Примером такой процедуры может служить чтение файла. Но вот процедура снятия некоторой суммы с банковского счета не является идемпотентной, и в случае потери ответа повторный запрос может существенно изменить состояние счета клиента. Одним из возможных решений является приведение всех процедур к идемпотентному виду. Однако на практике это не всегда удается, поэтому может быть использован другой метод -_______________________________________________________. Ядро сервера запоминает номер самого последнего запроса от каждого из клиентов, и при получении каждого запроса выполняет анализ — является ли этот запрос первичным или повторным.
4._______________________ после получения запроса. В данном случае имеет значение, когда произошел отказ -_____________________________________. Но клиентское ядро не может распознать эти ситуации, для него известно только то, что время ответа истекло. Существует три подхода к этой проблеме:

а)_______________________________________________________________________________________________________________________________________
б)_______________________________________________________________________________________________________________________________________
в)___________________________________________________________________________________________________________________________________________________________________________________________________________

Лекция 3.

3.1 Кластеры. Архитектуры кластеров
Кластер-_________________________________________________________________
__________________________________________________________________________
Устройство кластера:
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
___________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Кластеры используются для повышения ______________ и _______________.
Доступность — система, входящая в кластер, ________________, ПО кластера распределяет работу, выполнявшуюся этой системой, между______________, составляющими кластер.
Наращиваемость — общая ______________достигает предела возможностей систем, составляющих кластер, кластер можно нарастить, добавив дополнительную систему
Кластеры позволяют увеличивать производительность по мере необходимости,добавляя новые системы.

Один из первых архитекторов кластерной технологии Грегори Пфистер «Кластер — это_______________________________________________________________________
_________________________________________________________________________:

  • состоит из ________________________________________________________
  • используется как ___________________________________________________

Основные виды кластеров:
1.отказоустойчивые кластеры (High-availability clusters, HA, кластеры высокой доступности______________________________________________________________
_________________________________________________________________________

________________________________________________________________________________________________________________________________________
2.кластеры с балансировкой нагрузки (Load balancing clusters)_______________
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
3.вычислительные кластеры (High perfomance computing clusters)____________
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
4.grid-системы_______________________________________________________
________________________________________________________________________________________________________________________________________

Архитектуры кластеров:
1.Кластеры с сетевой балансировкой нагрузки (NetworkLoadBalancingClus
ter—NLBC)*(см.приложение)
2.Кластеры серверов (server clusters);*(см.приложение)
3.Кластеры приложений (application clusters)*(см.приложение)

3.2 Особенности операционных систем для кластеров. Windows 2000 Cluster Server, Sun Cluster.
Кластер-____________________________________________________________
Windows 2000 Cluster Server-__________________________________________
____________________________________________________________________Функции:___________________________________________________________________________________________________________________________________________________________________________________________________
Особенности:________________________________________________________________________________________________________________________________________________________________________________________________
Sun Cluster-_________________________________________________________
____________________________________________________________________
Функции:___________________________________________________________________________________________________________________________________________________________________________________________________
Особенности:________________________________________________________________________________________________________________________________________________________________________________________________

Статьи к прочтению:

Удалённый вызов процедур


Похожие статьи: