Главная » Просмотр файлов » Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы)

Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (1162619), страница 19

Файл №1162619 Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы)) 19 страницаЭ. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (1162619) страница 192019-09-20СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 19)

В современных архитектурах распределение на клиенты и серверыпроисходит способом, известным как горизонтальное распределение {horizontaldistribution). При таком типе распределения клиент или сервер может содержатьфизически разделенные части логически однородного модуля, причем работас каждой из частей может происходить независимо. Это делается для выравни­вания загрузки.В качестве распространенного примера горизонтального распределения рас­смотрим web-сервер, peплициpoвapн^ый на несколько машгн! локальной сети, какпоказано на рис. 1.22. На каждом из серверов содержится один и тот же наборweb-страниц, и всякий раз, когда одна из web-страниц обновляется, ее копии не­замедлительно рассылаются на все серверы.

Сервер, которому будет переданприходящий запрос, выбирается по правилу «карусели» (round-robin). Эта фор­ма горизонтального распределения весьма успешно используется для выравни­вания нагрузки на серверы популярных web-сайтов.Таким же образом, хотя и менее очевидно, могут быть распределены и клиен­ты. Для несложного приложения, предназначенного для коллективной работы,мы можем не иметь сервера вообще.

В этом случае мы обычно говорим об одно­ранговом распределении {peer-to-peer distribution). Подобное происходит, напри-78Глава 1, Введениемер, если пользователь хочет связаться с другим пользователем. Оба они долж­ны запустить одно и то же приложение, чтобы начать сеанс. Третий клиентможет общаться с одним из них или обоими, для чего ему нужно запустить то жесамое приложение.Встречаи обработкавходящихзапросовРеплицированные web-серверы,каждый из которых содержитодни и те же web-страницыЗапросыобрабатываемыеспособом«карусели»- Диски51Рис. 1.22.

Пример горизонтального распределения web-службыЧисло альтернативных организаций архитектуры клиент-сервер обсуждаетсяв книге [3]. В следующих главах мы рассмотрим множество других вариантоворганизации распределенных систем, в частности мы познакомимся с система­ми, распределенными одновременно и по вертикали, и по горизонтали.1.6. ИтогиРаспределенные системы состоят из автономных компьютеров, которые работа­ют совместно, представая в виде единой связной системы.

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

Тем не менее заинте­ресованность в построении и внедрении распределенных систем наблюдается по­всеместно.Существуют различные типы распределенных систем. Распределенные опе­рационные системы используются для управления аппаратным обеспечением взаи­мосвязанных компьютерных систем, к которым относятся мультипроцессорныеи гомогенные мультикомпьютерные системы. Эти распределенные системы насамом деле не состоят из автономных компьютеров, но успешно воспринимают­ся в виде единой системы. Сетевые операционные системы, с другой стороны,с успехом объединяют различные компьютеры, работающие под управлением1.6. Итоги79своих операционных систем, так что пользователи с легкостью могут получатьдоступ к локальным службам каждого из узлов.

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

Этотуровень, называемый промежуточным, предназначен для того, чтобы скрыть ге­терогенность и распределенную природу базового набора компьютеров. Распре­деленные системы с промежуточным уровнем обычно требуют специфическуюмодель распределения и связи. Известные модели основаны на удаленном вызо­ве процедур, а также на распределенных объектах, файлах или документах.Для каждой распределенной системы важна схема ее внутренней организа­ции. Широко применяется модель, в которой процессы клиента запрашиваютслужбы у процессов сервера. Клиент посылает на сервер сообщение и ожидает,пока тот вернет ответ. Эта модель тесно связана с традиционным программиро­ванием, в котором службы реализуются в виде процедур в отдельных модулях.Дальнейшее уточнение обычно состоит в подразделении на уровень пользова­тельского интерфейса, уровень обработки и уровень данных.

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

Типичным примером успешного применения горизонтального распределе­ния является World Wide Web.Вопросы и задания1. Какова роль программного обеспечения промежуточного уровня в распреде­ленных системах?2. Объясните, что такое прозрачность (распределения) и приведите примерыразличных видов прозрачности.3. Почему иногда так трудно скрыть наличие в распределенной системе сбояи восстановление после него?4. Почему реализация максимально возможной степени прозрачности — это невсегда хорошо?5.

Что такое открытая распределенная система и какие преимущества дает от­крытость?6. Опишите точно, что такое масштабируемая система.7. Масштабируемости можно добиться, используя различные методики. Что этоза методики?80Глава 1. Введение8. Чем мультипроцессорная система отличается от мультикомпьютерной?9. Мультикомпьютерная система с 256 процессорами организована в видерешетки 16x16. Какая в такой системе может быть максимальная задержка(в хопах)?10. Рассмотрим 256-процессорный гиперкуб. Какая максимальная задержка мо­жет наблюдаться в нем (снова в хопах)?И. В чем состоит разница между распределенными и сетевыми операционнымисистемами?12. Расскажите, как можно использовать микроядро для организации операцион­ной системы, работающей в режиме клиент-сервер.13.

Опишите основные принципы работы распределенной системы с совместноиспользуемой памятью страничной организации.14. Какова причина разработки распределенных систем с совместно используе­мой памятью? В чем, по-вашему, состоит главная трудность их эффективнойреализации?15. Расскажите, что такое ошибочное разделение в распределенных системахс совместно используемой памятью. Какие решения этой проблемы вы може­те предложить?16.

Экспериментальный файловый сервер 3/4 времени работает, а 1/4 времени«лежит» по причине ошибок. Сколько реплик этого сервера должно быть сде­лано, чтобы его доступность составляла хотя бы 99 %?17. Что такое трехзвенная архитектура клиент-сервер?18. В чем состоит разница между горизонтальным и вертикальным распределе­ниями?19. Рассмотрим цепочку процессов Р], Р2, ..., Р„, которая реализована в много­звенной архитектуре клиент-сервер. Процесс Pi является клиентом процессаPf+i, возвращая, в свою очередь, результат процессу P/_i только после того,как сам получит результат от процесса P/+i- Какова будет главная проблемаподобной организации, когда мы станем рассматривать производительностьзапроса-ответа для процесса Р^?Глава 2Связь2.1.

Уровни протоколов2.2. Удаленный вызов процедур2.3. Обращение к удаленным объектам2.4. Связь посредством сообщений2.5. Связь на основе потоков данных2.6. ИтогиСвязь между процессами — это суть распределенных систем. Нет смысла изучатьраспределенные системы, не рассматривая при этом во всех подробностях спосо­бы обмена информацией между различными процессами, выполняющимися наразных машинах. Взаимодействие в распределенных системах всегда базируетсяна низкоуровневом механизме передачи сообщений, предоставляемом базовойсетью. Как мы обсуждали в предыдущей главе, реализация взаимодействия черезпередачу сообщений сложнее, чем использование примитивов на базе разделяе­мой памяти.

Современные распределенные системы часто включают в себя тыся­чи или даже миллионы процессов, разбросанных по ненадежной сети, такой какИнтернет. Если не заменить простейшие средства взаимодействия в компьютер­ных сетях чем-то иным, разработка масштабных приложений будет достаточносложной.Мы начнем эту главу с обсуждения правил, которых придерживаются сооб­щающиеся между собой процессы. Их обычно называют протоколами. Мы со­средоточимся на структурировании этих протоколов в виде уровней. Затем мырассмотрим четыре широко распространенные модели взаимодействия: удален­ный вызов процедур (Remote Procedure Call, RPC), удаленное обращение к ме­тодам (Remote Method Invocation, RMI), ориентированный на сообщения про­межуточный уровень (Message-Oriented Middleware, MOM) и потоки данных(streams).Нашей первой моделью взаимодействия в распределенных системах станетудаленный вызов процедур.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6551
Авторов
на СтудИзбе
299
Средний доход
с одного платного файла
Обучение Подробнее