Distributed Application Platform (DAP)

DAP is a software platform for large and complex distributed computing applications.

Version Description Release Date (updated)
dap-java-1.0 for deployment 2016-12-21
dap-java-sdk-1.0 for application development 2016-12-21
dap-java-trial-1.0 trial 2016-12-21
dap-cpp-1.0 deployment on Windows/Linux 2016-12-21
dap-cpp-sdk-1.0 for application development 2016-12-21
dap-cpp-trial-1.0 trial 2016-12-21

Programmable Workflow Framework (PWF)

PWF is a DAP-based software framework for distributed/parallel applications by either staged-job-task model or work-flow model. By the staged-job-task model, a job has many stages; each stage consists of many tasks; tasks are usually carried out in distributed/parallel manner. When all tasks of a stage are completed, the job moves to next stage controlled by its job state machine. The well-known MapReduce model is an example of the staged-job-task model, it has three stages: map, reduce and merge, controlled by a linear or circular state machine.

The work-flow model consists of many steps; each step takes inputs from some other steps and does computing to produce outputs, and then sends each output to its destination steps. The well-known artificial neuron network is an example of the work-flow model, in which steps are layered.

PWF contains data service for local and distributed data storage, processing service for shared computing procedures, task and job control modules, step and work control modules, as well as application prototypes.

Smart Grid Communication Middleware (SGCM)

SGCM provides a reliable, secure and high performance two-way communication solution for smart grid applications including data acquisition, monitoring, control, and distributed optimization computing. It is based on programmable nets for inter-component communication, and customized for high standard requirements of smart grid system.

Third party libraries and products

The following are used in DAP-CPP

Boost C++

C++ MicroServices

TinyClojure

Python

OpenSSL

The following are used in DAP-Java

Apache Felix

Clojure

Jython

Jetty

RedHat JBoss (EAP)