Использование ПЗУ службой PPS
Во время выполнения служба PPS хранит объекты в памяти:
![]() |
|
Содержание статьи:
Служба PPS поддерживает постоянное хранилище, которое должно находиться в надежной файловой системе. К таким файловым системам относятся:
Для хранения объекта на специальном устройстве (например, в энергонезависимой памяти небольшого объема, которая не поддерживает файловую систему) пользователь может создать собственного клиента и зарегистрировать его как подписчика этого объекта. Служба PPS будет уведомлять клиента о каждом изменении объекта, а клиент сможет сохранять его в энергонезависимой памяти в реальном времени.
Каталог с объектами постоянного хранилища включает в себя такую же иерархическую структуру каталогов, как и корневой каталог службы PPS. Таким образом, максимальная длина путевых и файловых имен, а также количество уровней вложенности каталогов в постоянном хранилище зависят от используемой файловой системы.
Например, сервер NFS в составе ЗОСРВ «Нейтрино» поддерживает до 15 уровней вложенности каталогов. Указанное ограничение также распространяется на службу PPS, которая использует эту файловую систему.
Cлужба PPS записывает все измененные объекты в постоянное хранилище при завершении работы. Кроме того, можно сохранять объект PPS в любой момент времени, вызывая для него функцию fsync().
При записи данных в постоянное хранилище служба PPS помещает каждый объект в отдельный файл в иерархии каталогов, которая является отображением иерархии дерева объектов PPS. Например, в конфигурации по умолчанию объект /pps/foo/bar
хранится в файле /var>pps/foo/bar
.
По умолчанию служба PPS использует каталог /var/pps
, но позволяет изменять его с помощью параметра -p.
![]() |
|
При запуске служба PPS немедленно формирует иерархию каталогов из кодированных файловых имен в постоянном хранилище. В конфигурации по умолчанию PPS откладывает загрузку объектов в каталогах до первого обращения к одному из файлов (с помощью вызова open() для объекта PPS или readdir() для каталога PPS).
Можно изменять конфигурацию службы PPS с помощью параметра -l так, чтобы при запуске она загружала имена каталогов и объектов без содержимого объектов либо загружала каталоги и объекты вместе с содержимым объектов. Дополнительную информацию см. на странице pps.
Предыдущий раздел: Устойчивая служба публикации/подписки (PPS)