Namespaces

Chain link, van Gogh

Namespaces are components of Nodes.

Each namespace has at least one thread, exactly one target registry, and exactly one nano service registry. They are the basis of applications, since applications with all their targets and local services must be executed multiple times and simultaneously in a node.

Target Registries

Namespaces have a Target-Registry. Targets - the Java objects that can receive messages - are registered in these target registries. During registration, the targets are given a unique address. The namespace ID is part of this address.

Threads

All messages in nyssr.net are asynchronous. Targets are not only assigned to a namespace, but always to a thread as well. They receive and process all messages they receive in this same thread. A namespace can have more than one thread. In this case, the thread must also be specified when registering targets.

Nano service Registries

Nano services are small services that can receive exactly one message. They always belong to a namespace. Nano services provided to the entire node are always registered in the SYSTEM namespace. You can send messages directly to nano services. For this you always need the namespace ID and the nano service ID. Observers (target addresses) can be attached to nano services. This is used for namespace-wide or node-wide notifications, since messages to nano services are basically sent to all observers of the nano service.

Namespace Registry

All namespaces are registered in a registry. The Namespace Registry is a service in nyssr.net.

Namespace Factory

Namespaces are created or deleted via the Namespace Factory. The Namespace Factory is a service in nyssr.net.