Составители:
−
принятие сеансовой семантики, в соответствии с которой
запись файла на сервер производится только после закрытия
файла. Этот алгоритм называется «запись по закрытию» и приводит
к тому, что если две копии одного файла кэшируются на разных
машинах и последовательно записываются на сервер, то второй
записывается поверх первого.
Проверка достоверности кэша. Распространение модификаций
решает только проблему согласования главной копии файла, хранящейся на
сервере, с клиентскими копиями. В то же время этот прием не дает никакой
информации о том, когда должны обновляться данные, находящиеся в кэшах
клиентов. Очевидно, что данные в кэше одного клиента становятся
недостоверными, когда данные, модифицированные другим клиентом,
переносятся в главную копию файла. Следовательно, необходимо проверять,
являются ли данные в кэше клиента достоверными. В противном случае
данные кэша должны быть повторно считаны с сервера. Существуют два
подхода к решению этой проблемы.
1.
Инициирование проверки клиентом, в этом случае клиент
связывается с сервером и проверяет, соответствуют ли данные в
его кэше данным главной копии файла на сервере. Клиент может
выполнять такую проверку одним из трех способов:
− Перед каждым доступом к файлу. Этот способ дискредитирует
саму идею кэширования, так как каждое обращение к файлу
вызывает обмен по сети с сервером. Но зато это обеспечивает
семантику разделения файлов UNIX.
− Периодические проверки. Улучшают производительность, но
делают семантику разделения неясной, зависящей от временных
соотношений.
− Проверка при открытии файла. Этот способ подходит для
сеансовой семантики. Необходимо отметить, что сеансовая
семантика требует одновременного применения модели доступа
загрузки-выгрузки, метода распространения модификаций
«запись по закрытию» и проверки достоверности кэша при
открытии файла.
2.
Инициирование проверки сервером. Когда файл открывается, то
клиент, выполняющий это действие, посылает соответствующее
сообщение файловому серверу, в котором указывает режим
открытия файла — чтение или запись. Файловый сервер сохраняет
данную информацию и использует ее при доступе к файлу других
клиентов.
Если файл открыт для чтения, то нет никаких препятствий для
разрешения другим процессам открыть его для чтения, но
открытие его для записи должно быть запрещено. Аналогично,
128
− принятие сеансовой семантики, в соответствии с которой
запись файла на сервер производится только после закрытия
файла. Этот алгоритм называется «запись по закрытию» и приводит
к тому, что если две копии одного файла кэшируются на разных
машинах и последовательно записываются на сервер, то второй
записывается поверх первого.
Проверка достоверности кэша. Распространение модификаций
решает только проблему согласования главной копии файла, хранящейся на
сервере, с клиентскими копиями. В то же время этот прием не дает никакой
информации о том, когда должны обновляться данные, находящиеся в кэшах
клиентов. Очевидно, что данные в кэше одного клиента становятся
недостоверными, когда данные, модифицированные другим клиентом,
переносятся в главную копию файла. Следовательно, необходимо проверять,
являются ли данные в кэше клиента достоверными. В противном случае
данные кэша должны быть повторно считаны с сервера. Существуют два
подхода к решению этой проблемы.
1. Инициирование проверки клиентом, в этом случае клиент
связывается с сервером и проверяет, соответствуют ли данные в
его кэше данным главной копии файла на сервере. Клиент может
выполнять такую проверку одним из трех способов:
− Перед каждым доступом к файлу. Этот способ дискредитирует
саму идею кэширования, так как каждое обращение к файлу
вызывает обмен по сети с сервером. Но зато это обеспечивает
семантику разделения файлов UNIX.
− Периодические проверки. Улучшают производительность, но
делают семантику разделения неясной, зависящей от временных
соотношений.
− Проверка при открытии файла. Этот способ подходит для
сеансовой семантики. Необходимо отметить, что сеансовая
семантика требует одновременного применения модели доступа
загрузки-выгрузки, метода распространения модификаций
«запись по закрытию» и проверки достоверности кэша при
открытии файла.
2. Инициирование проверки сервером. Когда файл открывается, то
клиент, выполняющий это действие, посылает соответствующее
сообщение файловому серверу, в котором указывает режим
открытия файла — чтение или запись. Файловый сервер сохраняет
данную информацию и использует ее при доступе к файлу других
клиентов.
Если файл открыт для чтения, то нет никаких препятствий для
разрешения другим процессам открыть его для чтения, но
открытие его для записи должно быть запрещено. Аналогично,
128
Страницы
- « первая
- ‹ предыдущая
- …
- 126
- 127
- 128
- 129
- 130
- …
- следующая ›
- последняя »
