Previous  Next          Contents  Index  Navigation  Glossary  Library

Inter-Process Communication

Oracle Master Scheduling/MRP and Oracle Supply Chain Planning breaks tasks into smaller tasks that are executed concurrently by independent processes (workers). The programs that execute these tasks concurrently need to communicate to coordinate their actions.

Communication via the Oracle Server

Oracle Master Scheduling/MRP and Oracle Supply Chain Planning uses the Oracle Server for inter-process communication. For example, a Snapshot Delete Worker needs to be able to communicate to the Snapshot Monitor that it has finished deleting the old plan data from a specific table. The Snapshot Delete Worker does so by updating the appropriate columns in the database and issuing a database commit, instead of relying on hardware-dependent techniques such as signals or sockets. The Snapshot Monitor can then query those columns to receive the message that the data has been deleted and can launch the Loader Worker.

Oracle Master Scheduling/MRP and Oracle Supply Chain Planning also uses an Oracle Server feature, database pipes, as a port-independent mechanism of asynchronous communication. For example, when the Snapshot Monitor needs to communicate the next task to be executed to the Memory-based Snapshot or the Memory-based Snapshot Workers, it places the task number on a pipe. The Memory-based Snapshot and its Workers listen to the pipe to receive the task number. After the execution of the task, they use the same mechanism to communicate the completion of task to the Snapshot Monitor.

See Also

Memory-based Planning Engine


         Previous  Next          Contents  Index  Navigation  Glossary  Library