Распределенные вычисления: технология Microsoft RPC. Часть1. Фертиков В.В. - 8 стр.

UptoLike

Составители: 

8
Инструментальные средства Microsoft RPC представляют общий подход ,
который позволяет библиотекам процедур, написанным на C, выполняться на
других компьютерах . Фактически, прикладная программа может компоноваться
с библиотеками, реализованными с использованием RPC, без уведомления
пользователя об использовании RPC.
Модель клиент-сервер.
Архитектура клиент- сервер эффективный и популярный проект распре-
деленных приложений . В модели приложение разделяется на две части: фрон-
тальный клиент, который представляет информацию пользователю , и оконеч-
ный сервер , сохраняющий и манипулирующий данными и вообще произво -
дящий большую часть вычислительных задач для пользователя. В этой модели
сервер обычно более мощный компьютер, чем клиент, и служит центральным
хранилищем данных для многих компьютеров клиентов, делая систему простой
в управлении. Типичными примерами приложений клиент- сервер являются
разделяемые базы данных, удаленные файловые серверы и удаленные серверы
печати.
Сетевые системы поддерживают разработку приложений клиент- сервер с
использованием средств межпроцессных взаимодействий (interprocess
communication IPC), которые позволяют клиенту и серверу связываться и ко-
ординировать их работу . Например , клиент может использовать механизм IPC,
чтобы послать код операции и данные на сервер , запрашивая вызов специфиче-
ской процедуры . Сервер получает и декодирует запрос, затем вызывает соот-
ветствующую процедуру , выполняет все вычисления, необходимые для удовле-
творения запроса, затем возвращает результат пользователю . Приложения кли-
ент- сервер обычно разрабатываются с целью минимизации количества переда-
ваемых по сети данных. В дополнение ко всем возможным ошибкам , которые
могут происходить на одиночном компьютере, сеть имеет и собственные усло-
вия возникновения ошибок . Например , соединение может быть потеряно, сер -
вер может исчезнуть из сети, сетевая служба безопасности может отвергнуть
доступ к ресурсам системы, пользователи могут конкурировать при использо-
вании ресурсов. Итак , при написании приложения клиент- сервер необходимо
обеспечить уровень кода, который управлял бы сетевой связью с обработкой
все возможные условий возникновения ошибок . Преимущество использования
Microsoft RPC в том , что инструментальные средства RPC сами обеспечивают
этот уровень: RPC почти устраняет потребность писать специфический для се-
ти код . Инструментальные средства RPC управляет многими деталями в отно-
шении сетевых протоколов и связи, позволяя разработчику сосредоточиться на
деталях приложения.
Модель сервера-вычислителя.
RPC представляет шаг развития модели клиент- сервер , в которой под сер -
верами подразумеваются файловые серверы, серверы печати, или серверы свя -
зи, в зависимости от того , обеспечивают ли они совместное использование
файлов или соединены с принтерами или модемами. В дополнение к этим тра-
                                     8
    Инструментальные средства Microsoft RPC представляют общий подход,
который позволяет библиотекам процедур, написанным на C, выполняться на
других компьютерах. Фактически, прикладная программа может компоноваться
с библиотеками, реализованными с использованием RPC, без уведомления
пользователя об использовании RPC.

     Модель клиент-сервер.
     Архитектура клиент-сервер – эффективный и популярный проект распре-
деленных приложений. В модели приложение разделяется на две части: фрон-
тальный клиент, который представляет информацию пользователю, и оконеч-
ный сервер, сохраняющий и манипулирующий данными и вообще – произво-
дящий большую часть вычислительных задач для пользователя. В этой модели
сервер – обычно более мощный компьютер, чем клиент, и служит центральным
хранилищем данных для многих компьютеров клиентов, делая систему простой
в управлении. Типичными примерами приложений клиент-сервер являются
разделяемые базы данных, удаленные файловые серверы и удаленные серверы
печати.
     Сетевые системы поддерживают разработку приложений клиент-сервер с
использованием средств межпроцессных взаимодействий (interprocess
communication – IPC), которые позволяют клиенту и серверу связываться и ко-
ординировать их работу. Например, клиент может использовать механизм IPC,
чтобы послать код операции и данные на сервер, запрашивая вызов специфиче-
ской процедуры. Сервер получает и декодирует запрос, затем вызывает соот-
ветствующую процедуру, выполняет все вычисления, необходимые для удовле-
творения запроса, затем возвращает результат пользователю. Приложения кли-
ент-сервер обычно разрабатываются с целью минимизации количества переда-
ваемых по сети данных. В дополнение ко всем возможным ошибкам, которые
могут происходить на одиночном компьютере, сеть имеет и собственные усло-
вия возникновения ошибок. Например, соединение может быть потеряно, сер-
вер может исчезнуть из сети, сетевая служба безопасности может отвергнуть
доступ к ресурсам системы, пользователи могут конкурировать при использо-
вании ресурсов. Итак, при написании приложения клиент-сервер необходимо
обеспечить уровень кода, который управлял бы сетевой связью с обработкой
все возможные условий возникновения ошибок. Преимущество использования
Microsoft RPC в том, что инструментальные средства RPC сами обеспечивают
этот уровень: RPC почти устраняет потребность писать специфический для се-
ти код. Инструментальные средства RPC управляет многими деталями в отно-
шении сетевых протоколов и связи, позволяя разработчику сосредоточиться на
деталях приложения.

     Модель сервера-вычислителя.
     RPC представляет шаг развития модели клиент-сервер, в которой под сер-
верами подразумеваются файловые серверы, серверы печати, или серверы свя-
зи, в зависимости от того, обеспечивают ли они совместное использование
файлов или соединены с принтерами или модемами. В дополнение к этим тра-