devel.one is a programmable peer-to-peer network for the creation of distributed applications based on messages.
It is used to easily create programs with high connectivity from a single library. It avoids the use of other tools, programming approaches, scripting languages, etc., as is unfortunately the common practice today.
The key feature is the type of messaging. Objects can send messages to other objects by attaching the devel.one address of the target object to the message. It does not matter whether the target is in another thread, another program or on another computer. The system ensures the proper delivery and the return of the reply.
No interfaces are used for the remote programs (loose coupling), so the system is ideally suited for linking heterogeneous programming teams.
Messages are very small during transport. They are binary (no serialization, no XML), portable (we are working on conversions for other languages), and quick to parse. The system includes extensive messaging support through timers, services, observer, hooks, hierarchical state machines (HSM) etc.
Tools for tracing message sequences with graphical representation and logging tools for monitoring in the entire network from devel.one NODES are included. Within a computer, hundreds of thousands of messages can be processed per second.
A connectivity plug-in makes it easy to create peer-to-peer networks from NODES that automatically connect to target NODES. Routing protocols ensure that all computers know which computers are connected to their computer and how a message can be routed to another computer as quickly as possible. The message remains within the network and is forwarded from NODE to NODE. The system uses end-to-end point-to-end encryption using RSA, AES and session key to ensure message integrity. The configuration is kept simple, a network of a dozen computers is created within minutes.
The use of messages and plug-ins makes it easy to split programs into many small services and distribute them over a NODE network. The distribution can be continuously adapted to the growth and utilization of individual computers.
The library is small (approx. 750 KB) and contains few dependencies (LOGBACK for logging, H2 as SQL database for configuration, XOM for XML).