Техника программирования и надежность extrd.dat



Posted by Анатолий Анимица on June 13, 1999 at 09:03:56:

In Reply to: Техника программирования posted by Анатолий Таланин, г.Новосибирск on June 13, 1999 at 07:15:57:

AAA

Анатолий Таланин привел замечательный пример использования структур ФБП для хранения данных - действительно, *.rpt - очень устойчивая структура.
Extrd.dat - тоже очень надежное место, только его нужно резервировать так же, как и *.f3p, в основном, охраняя от юных отличников боевой и политической подготовки, обученных внутренней структуре данных, а также от отказа Днепрогэса в момент сброса кэша на диск при одновременном отказе UPS (три катастрофы в один момент - и extrd.dat "исчез, как будто и не существовал на свете").
Но! Совершенно нет нужды загромождать оперативную память экстрапараметрами, которые не подлежат динамическому пересчету, не фигурируют в нитях данных (это один из моих механизмов, эквивалентный фактам - существует лента опорного факта, на который нанизаны грозди экстрапараметров в произвольных количествах - сотнями при необходимости, при этом их дискретность - не день, а факт из этой ленты. Но нужно очень аккуратно все писать, иначе прямо видно, как сервер натыкается на такие точки активности. Есть способ лучше!
Extrd.dat - обновите его при старте сервера загрузкой данных из *.rpt - и все! Расход памяти будет точно таким же, проблема актуализации исчезает, fastged работает, только не забывайте, что [ged..] при включенном и выключенном fastged - это разные вещи (при длине данные + индекс больше 256 байт, я писал об этом.) В остальном - целиком поддерживаю!
У меня, например, таким образом подгружается таблица коррекции температурной плотности бензина в системе автоматизации АЗС (и об этом уже писал, надо же). В то же время таблица уровень-объем в этой же АЗС - это экстрапараметры опорного субсчета "бочка N 6..." - понятно, вдруг в какой день придется ее перемерить, и надо будет внести коррективы с этого мгновения. А бензин - он и в Африке бензин, по крайней мере, насчет коэффициента теплового расширения, зачем его в extra держать.

AAA




Пpишедшие ответы: