Организация средств распределенных вычислений в виде программы

Чтобы оценить значение принципа дистанционного вызова процедур, необходимо понять, что он позволяет легко разрабатывать распределенные программы, несмотря на все свои практические ограничения. Чтобы убедиться в этом, предположим, что для организации распределенных вычислений применяются отдельные программы, работающие в распределенной среде. Представьте себе, насколько проще было бы создание распределенных программ, если бы в них для получения доступа к удаленной службе достаточно было вызвать процедуру, а не разрабатывать клиентское и серверное программное обеспечение, которое обеспечивает взаимодействие между локальным и удаленным компонентами. Насколько упростилось бы создание программ, если в них поток выполнения мог переходить по сети на удаленный компьютер, вызывать на нем удаленную процедуру, а затем возвращаться к вызывающей. С точки зрения программиста, к удаленным службам было бы так же легко обращаться, как к локальным процедурам или к локальным службам операционной системы. Иными словами, разработка распределенных программ стала бы такой же простой, как и разработка нераспределенных программ, поскольку в них могли бы применяться навыки и опыт программистов, приобретенный при использовании локальных вызовов процедур. Кроме того, программисты, знакомые с механизмом передачи параметров процедуры, могли бы точно определять все тонкости взаимодействия между клиентом и сервером без использования какой-либо специальной системы обозначений или особого языка.

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

21.10. Определение дистанционного вызова процедур, предложенное компанией Sun Microsystems

Компания Sun Microsystems определила конкретную форму дистанционного вызова процедур, которая известна под названием Sun RPC, ONC (Open Network Computing — Открытый стандарт сетевой обработки) RPC или просто RPC1. Определение дистанционного вызова процедур ONC получило широкое признание в компьютерной индустрии. Оно было применено в качестве механизма реализации многих приложений, включая NFS (Network File System — Сетевая файловая система2).

Спецификация ONC RPC определяет формат сообщений, передаваемых вызывающей процедурой (клиентом) для вызова удаленной процедуры на сервере, формат параметров, а также формат результатов, возвращаемых из вызываемой процедуры в вызывающую. Эта спецификация позволяет использовать в вызывающей программе для передачи сообщений протокол UDP или TCP и предусматривает применение формата XDR для представления параметров процедуры, а также других элементов в заголовке сообщения RPC. И наконец, кроме определения протокола, в состав средств ONC RPC входит система трансляции, обеспечивающая автоматическое создание распределенных программ.

Похожие статьи Меню Опрос Фото Популярное