Helllo, Я хотел бы поделиться небольшими объемами данных (< 1K) между python и процессами. Данные представляют собой физические данные PC/104 IO, которые быстро и часто меняются (24x7x365). Будет один "сервер", записывающий данные и несколько клиентов, читающих его части. В системе, в которой будет работать, используется флэш-память (CF-карта), а не жесткий диск, поэтому я беспокоюсь о том, чтобы вытащить флеш-память с помощью схемы на основе файлов. Я также хотел бы использовать меньше энергии (процессорное время), поскольку мы на 100% работаем на солнечной энергии.
- Является ли это серьезным беспокойством? Мы могли бы сменить CF-карту на SSD.
- Изменяет ли значение с помощью mmap физически записывает данные на диск или это виртуальный файл?
- Мы будем работать на Debian, поэтому, возможно, POSIX IPC для модуля python - лучшее решение. Кто-нибудь использовал его?
- Кто-нибудь пробовал модуль Python Object Sharing (POSH)? Он выглядит многообещающим на первый взгляд, но он находится в "Альфе" и, похоже, не активно развивается.
Спасибо
UPDATE: Мы замедляем максимальную скорость обновления данных до 10 Гц, но чаще всего 1 Гц. Клиенты будут уведомляться только в том случае, если значение изменяется, а не с постоянной скоростью обновления. Мы перешли к модели с несколькими серверами/несколькими клиентами, где каждый сервер специализируется на определенном типе инструмента или функции. Поскольку выяснилось, что большинство программ должно было быть сделано программистами Java, мы закончили использование JSON-RPC через TCP. Серверы будут написаны на Java, но я все же надеюсь написать основной клиент в Python и провести исследования JSON-RPC.