Контрольные вопросы по теме 4.1

 

Контрольные вопросы по теме 4.1

1. Что понимается под термином «распределенные приложения»?

Под термином распределенное приложение (Distributed application) понимается приложение, которое выполняется в среде распределенных вычислений, модули такого приложения могут выполняться на разных вычислительных системах.

2. Чем отличается схема взаимодействия централизованного и распределённого приложений?

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

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

 


Рис. 1. Схема взаимодействия централизованного приложения

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

 


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

Рис. 2. Схема взаимодействия распределенного приложения

3. Какой язык программирования преимущественно используется для создания сетевых приложений в сети Internet?

В настоящее время основным средством для создания сетевых приложений в сети Internet является язык Java. Java - это объектно-ориентированный язык программирования, основными преимуществами которого являются: простота, распределяемость, интерпретируемость, надежность, защищенность, независимости от архитектуры, переносимость, высокая производительность, многопоточность и динамичность.