The goal of diffusive programming is to make task-oriented distributed computing easier by separating the execution logic from the distribution logic. Diffusive programming, defined by a set of six principles, is an approach for performing method-level, task-oriented distributed computing. In diffusive programming, any method can be marked for distribution, regardless of its signature. And marking a method is necessary and sufficient for its execution to be distributed. Distribution of tasks occurs through a network of nodes that can accept tasks and execute them, or forward them on. Nodes executing a task, load the required resources as needed, and cache them. The topology of the network of nodes can be anything that can be represented as a directed graph. Topologies can be tailored to solve specific problems. Diffusive is a Java refer- ence implementation of the six principles that define diffusive programming.
Be the first to post a review of Diffusive!