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

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

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

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

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

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

Подобную групповую рассылку, как показано в предыдущей главе,можно реализовать на базе отметок времени Лампорта. К сожалению, подход сиспользованием отметок времени Лампорта плохо масштабируется в большихраспределенных системах. В качестве альтернативы — полного упорядоченияможно достигнуть с помощью центрального координатора, называемого такжесеквенсором {sequencer).

Один из способов — просто передавать каждую опера­цию секвенсору, который присвоит ей уникальный последовательный номер иразошлет по всем репликам. Операции будут выполняться в соответствии с их6.5. Протоколы непротиворечивости383номерами. Понятно, что такая реализация полностью упорядоченной групповойрассылки очень напоминает протоколы непротиворечивости на базе первичногосервера.Отметим, что использование секвенсора не решает проблем масштабируемо­сти. На самом деле, если необходима полностью упорядоченная групповая рас­сылка, ее можно реализовать путем сочетания симметричной групповой рассылкис использованием отметок времени Лампорта и секвенсоров.

Подобное решениеописано в [384].Другая проблема, которую следует решить, — что делать с реплицированнымиобращениями. Рассмотрим объект Л, обращаюш;ийся к другому объекту В, какпоказано на рис. 6.24. Объект В при этом обращается к третьему объекту С. Еслиобъект В реплицируется, каждая реплика В будет в принципе обращаться к объ­екту С независимо от других. Проблема в том, что объект С получит множествообращений вместо одного. Если вызываемый метод С призван выполнить пере­вод $100 000 со счета на счет, очевидно, рано или поздно кто-нибудь пожалуется.КлиентреплицируетобращениеОбъект получаетодно и то жеобращение триждыВсе реплики видятодно и то жеобращениеРеплицированныйобъектРис.

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

Одноиз решений, описанное в [288], не зависит от правил репликации, то есть от дета­лей поддержания непротиворечивости реплик. Другое решение является частьюсистемы GARF [158]. Суть его состоит в создании осведомленного о репликахкоммуникационного уровня, поверх которого выполняются реплицируемые объ­екты.

Когда реплицированный объект В обращается к другому реплицированному объекту С, первым делом все реплики объекта В присваивают этому обра­щению один и тот же уникальный идентификатор. После этого координаторреплик В передает обращение всем репликам объекта С, в то время как осталь-384Глава 6. Непротиворечивость и репликацияные реплики В воздерживаются от посылки своих копий обращения, как это по­казано на рис. 6.25, а.

В результате каждой реплике С посылается только однообращение.Координаторобъекта ВКлиент реплицирует (обращение•Координаторобъекта СРезультатРезультатРис. 6.25. Передача обращения от реплицированного объекта другому реплицированномуобъекту (а). Возвращение ответа одного реплицированного объекта другому (б)Такой же механизм используется, чтобы гарантировать получение репликами Втолько одного ответного сообщения. Эта ситуация представлена на рис. 6.25, б.Координатор реплик С уведомляется, что необходимо разобраться с реплицированными ответными сообщениями, созданными каждой из реплик С. Хотя этисообщения создаются каждой из реплик, только координатор передает ответ реп­ликам объекта В, в то время как остальные реплики С воздерживаются от посыл­ки своих копий ответного сообщения.После того как реплика В в ответ на запрос, который она передавала объекту Сили оставляла у себя, получает сообщение с результатом, она, если является ко­ординатором, возвращает результат реальному объекту А.В сущности, описанная здесь схема основана на использовании групповой рас­сылки, но одинаковые сообщения разными репликами не рассылаются.

Такимобразом, это схема с активным отправителем. Можно сделать и так, чтобы при­нимающая реплика проверяла многочисленные копии входящих сообщений, от­носящиеся к одному и тому же обращению, и передавала связанному с ней объ­екту только одну копию. Детали этой схемы мы оставляем читателю в качествесамостоятельного упражнения.Протоколы кворумаДругой подход к поддержке реплицированных операций записи основан на ис­пользовании голосования {voting). Изначально он был представлен в [457] и обоб­щен в [167]. Основная идея состоит в том, чтобы потребовать от клиента до на­чала чтения или записи данных запрашивать и получать разрешение на это усерверов.6.5.

Протоколы непротиворечивости385В качестве простого примера работы этого алгоритма рассмотрим распреде­ленную файловую систему и предположим, что файл реплицирован на Л^ серве­ров. Мы можем создать правило, согласно которому для обновления файла кли­ент должен сначала связаться как минимум с половиной серверов плюс ещеодним (большинством) и попросить их согласия на обновление. Как только онисогласятся, файл изменится и с новым файлом будет ассоциирован новый номерверсии. Номер версии используется для идентификации версии файла и являет­ся одинаковым для всех обновленных файлов.Для чтения реплицированного файла клиент также должен связаться с поло­виной серверов плюс еще одним и запросить у них номера версий, ассоцииро­ванные с файлом.

Если все номера версий согласованы, среди них должна быть ипоследняя версия, поскольку попытка произвести обновления только на серве­рах, которым не был направлен запрос, невозможна, — они не составляют боль­шинства.Так, например, если имеется пять серверов и клиент определил, что три изних имеют файл версии 8, то не может быть, чтобы на остальных двух хранилсяфайл версии 9, поскольку любое обновление версии 8 на версию 9 требует разре­шения как минимум трех, а не двух серверов.Реальная схема более обобщенная, чем мы только что описали.

Согласно этойсхеме для чтения файла, имеющего N реплик, клиент должен собрать кворумчтения (read quorum) — произвольный набор любых NR ИЛИ более серверов. Со­ответственно, для модификации файла требуется кворум записи (write quorum),образованный как минимум Nw серверами.

Значения NR и Nw должны удовле­творять следующим двум условиям:NR + Nw> N,Nw>N/2.Первое ограничение используется для предотвращения конфликтов чтениязаписи, а второе — для предотвращения конфликтов двойной записи. Только по­сле того как соответствующее число серверов даст согласие на операцию, файлможно будет прочитать или изменить.Чтобы рассмотреть, как работает алгоритм, взглянем на рис. 6.26, а, на которомNR = 3,3.

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

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

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