СИСТЕМА ОБРАБОТКИ ИНСТРУКЦИЙ В РЕЖИМЕ РЕАЛЬНОГО ВРЕМЕНИ

1. Система обработки инструкций в режиме реального времени, в каждой из которых указываются файлы с информацией ресурсных счетов, относящихся к двум различным экономическим объектам, а также количество и тип ресурсов, которыми осуществляется обмен между этими файлами, причем система содержит:
множество модулей предварительной загрузки, обеспечивающих получение справочных данных, относящихся к инструкциям и содержащих текущие величины каждого из указанных файлов с информацией ресурсных счетов, причем множество модулей предварительной загрузки организовано таким образом, чтобы они работали параллельно при считывании справочных данных из главной базы данных (БД) для множества соответствующих принятых инструкций;
очередь расширенных инструкций, в которую поступает множество инструкций вместе с относящимися к ним соответствующими предварительно загруженными справочными данными;
подсистему выполнения инструкций для последовательного определения, с использованием принятых справочных данных, возможности выполнения каждой принятой инструкции для текущих величин относящихся к ней файлов ресурсных счетов и для формирования команды на обновление для каждой исполнимой инструкции; и
множество модулей обновления, реагирующих на команды на обновления, поступающие из подсистемы выполнения инструкций, для обновления главной БД результатами, полученными для каждой исполнимой инструкции, причем множество модулей обновления и подсистема выполнения инструкций работают независимо друг от друга.
2. Система по п.1, содержащая также очередь исходных входных данных, предназначенную для приема инструкций для выполнения в режиме реального времени и инструкций для выполнения в пакетном режиме от различных источников и подачи этих инструкций на входы модулей предварительной загрузки.
3. Система по п.2, в которой очередь исходных входных данных представляет собой множество очередей исходных входных данных, каждая из которых предназначена для подачи исходных входных данных постоянно на вход определенного модуля предварительной загрузки, назначенного для этой очереди.
4. Система по п.2, в которой очередь исходных входных данных обеспечивают назначение приоритета каждой входящей инструкции.
5. Система по п.1, содержащая также таблицу текущего состояния, которая хранится в подсистеме выполнения инструкций и которая обновляется результатами, полученными при выполнении инструкций в отношении файлов ресурсных счетов, так что величины файлов ресурсных счетов обновляются в режиме реального времени, причем подсистема выполнения инструкций для последующей последовательной обработки инструкций использует информацию, содержащуюся в таблице текущего состояния, вместо справочной информации, получаемой из модуля предварительной загрузки для определенного файла с информацией ресурсного счета.
6. Система по п.1, в которой каждый модуль предварительной загрузки содержит блок сбора данных из главной БД, который обеспечивает считывание из главной БД величин файлов ресурсных счетов, указанных в инструкции, а также агрегированных величин ресурсов, объединение информации и выдачу на выходе расширенной инструкции, включающей данные, считанные из главной БД.
7. Система по п.1, в которой подсистема выполнения инструкций содержит быстродействующее локальное запоминающее устройство для хранения таблицы текущего состояния.
8. Система по п.1, в которой подсистема выполнения инструкций обеспечивает определение возможности выполнения текущей инструкции для текущих величин файлов ресурсных счетов, относящихся к этой инструкции, с учетом записанного набора заданных правил.
9. Система по п.1, в которой подсистема выполнения инструкций содержит модуль меток времени для определения времени получения каждой инструкции, формирования метки времени и записи ее в инструкцию.
10. Система по п.1, в которой подсистема выполнения инструкций содержит модуль организации повторного выполнения для хранения перечня невыполненных инструкций в быстродействующем запоминающем устройстве и для осуществления операции повторного выполнения, в которой каждая невыполненная инструкция подается для повторного выполнения после того, как осуществлено обновление файлов ресурсных счетов, указанных в невыполненной инструкции.
11. Система по п.10, в которой модуль организации повторного выполнения обеспечивает хранение невыполненных инструкций в порядке их приоритетов и подает для повторного выполнения прежде всего инструкции, имеющие самый высокий приоритет.
12. Система по п.10, в которой модуль организации повторного выполнения обеспечивает резервирование текущей величины файла ресурсного счета для инструкции в перечне невыполненных инструкций и использует это зарезервированное количество для выполнения запросов этой инструкции в процессе ее повторного выполнения.
13. Система по п.10, в которой модуль организации повторного выполнения обеспечивает подачу невыполненных инструкций для повторного выполнения заданное максимальное число раз, и если инструкция все-таки не будет выполнена, то модуль повторного повторения обеспечивает удаление этой невыполненной инструкции.
14. Система по п.1, в которой подсистема выполнения инструкций содержит модуль формирования отчетных сообщений для уведомления о результатах выполнения каждой из принятых инструкций, причем модуль формирования отчетных сообщений формирует команду на обновление для каждой инструкции, для которой определяется, что она может быть выполнена, и команду на уведомление для каждой невыполненной инструкции.
15. Система по п.14, в которой модуль формирования отчетных сообщений обеспечивает временное хранение множества команд на обновление, пока не будет осуществлена фиксация, и выдачу множества команд на обновление после осуществления фиксации, причем фиксация представляет собой завершение одной физической единицы работы подсистемы выполнения инструкций.
16. Система по п.14, содержащая также очередь завершения, предназначенную для приема и размещения в ней команд на обновление и команд на уведомление, поступающих из модуля формирования отчетных сообщений.
17. Система по п.1, в которой каждый модуль обновления представляет собой множество экземпляров модуля обновления, работающих параллельно, причем эти экземпляры работают с разными, заданными для каждого из них, определенными частями главной БД.
18. Система по п.17, содержащая также очередь разделения входных данных для каждого экземпляра модуля обновления, причем каждая очередь разделения обеспечивает прием множества команд на обновление, относящихся к определенной части главной БД, которая обновляется соответствующим экземпляром модуля обновления.
19. Система по п.18, в которой каждая очередь разделения входных данных обеспечивает взаимный зачет команд на обновление, если команды обновления относятся к одним и тем же файлам ресурсных счетов.
20. Система по п.18, содержащая также модуль диспетчера, который обеспечивает определение маршрута каждой команды на обновление для направления ее к определенной очереди разделения данных и формирование отчетных сообщений для различных экономических объектов, в которых описывается невыполнение или выполнение инструкции.
21. Система по п.18, в которой очередь исходных входных данных представляет собой множество очередей исходных входных данных, каждая из которых предназначена для подачи исходных входных данных постоянно на вход определенного модуля предварительной загрузки, назначенного для этой очереди; и система содержит также
структуру маршрутизации для распределения инструкции среди множества очередей исходных входных данных или очередей разделения входных данных, работающих параллельно.
22. Система по п.21, в которой структура маршрутизации обеспечивает присвоение инструкции наименования инструкции, описывающего тип информации, к которому относится инструкция, и ключ модуля выравнивания нагрузки, который обеспечивает уникальный ключ, идентифицирующий инструкцию.
23. Система по п.22, в которой структура маршрутизации содержит блок выравнивания нагрузки, обеспечивающий вместе с модулем маршрутизации выбор одной из очередей исходных входных данных или одной из очередей разделения входных данных с использованием наименования и ключа модуля выравнивания нагрузки принятой инструкции.
24. Система по п.23, в которой модуль выравнивания нагрузки обеспечивает связь данного ключа модуля выравнивания нагрузки с одним и тем же определенным местом назначения, чтобы все инструкции, относящиеся к определенному файлу с информацией ресурсного счета, всегда направлялись в одну и ту же очередь из множества очередей.
25. Система по п.1, содержащая также структуру разграничения, которая в ответ на закрытие сеанса обработки в заданное время подает сообщение на вход очереди, предусмотренной на выходе подсистемы выполнения инструкций, и ожидает ответа, а также подает другое сообщение во входную очередь одного из модулей обновления и ожидает его ответа, и принимает последовательные ответы, сообщающие об обновлении главной БД результатами всех инструкций, выполненных до закрытия сеанса обработки.
26. Система по п.25, содержащая также модуль диспетчера, который обеспечивает определение маршрута каждой команды на обновление для направления ее в определенную очередь разделения данных и формирование отчетных сообщений для различных экономических объектов, в которых описывается невыполнение или выполнение инструкции; причем
структура разграничения также обеспечивает подачу сообщения во входную очередь модуля диспетчера и ожидает соответствующего ответного сообщения для подтверждения того, что отправлены все отчетные сообщения для инструкций, выполненных до закрытия сеанса обработки.
27. Система по п.1, содержащая также задающий модуль для определения пропускной способности по обработке инструкций подсистемы выполнения инструкций и задания состояний ожидания для любой очереди, с целью замедления загрузки инструкций, чтобы скорость их загрузки не превышала пропускной способности подсистемы выполнения инструкций.