A Proxy to the provided Methods (without the Options)
M.Karkowski
INopeRpcManager
Rest
...args: anyA Proxy to the provided Methods (including the Options)
M.Karkowski
INopeRpcManager
Rest
...args: anyEvent, which is fired, if a task has been canceled. this is called after a the method.
M.Karkowski
INopeRpcManager
Flag, to show, that the System is ready
M.Karkowski
INopeRpcManager
Element showing the available services.
OriginalKey
= Dispatcher ID (string);OriginalValue
= Original Message (IAvailableServicesMsg);ExtractedKey
= Function ID (string);ExtractedValue
= FunctionOptions (T);M.Karkowski
INopeRpcManager
performCall
execute a service. All relevant communications are mapped by the rpcManager
. The user does not know which runtime provides the service.
task
which can be aborted by cancelTask
. This leads to an exception at the calling unit.selectors
master
(see connectivityManager
) the master must execute the processfirst
: any provider executes the serives (the first in the list)dispatcher
: a specific dispatcher must run the service (defined by its id)host
: a dispatcher on the defined host.cpu-usage
: the dispatcher with the least CPU usagefree-ram
: The dispatcher with the lowest RAM usageM.Karkowski
INopeRpcManager
The name of the service. If a list is provided, all services will be called at the same time using the same parameters
Parameters
Optional
options: ValidCallOptions | ValidCallOptions[]Registers a function
M.Karkowski
INopeRpcManager
The Function
Rest
...args: any[]used during the service call.
Description of a RPC-Manager
Function, that must be called, to update the available dispatchers.
M.Karkowski
INopeRpcManager
Generated using TypeDoc
The
rpcManager
is essentially a service registry.Service Registry
A service registry is a tool used to store and manage information about available services in a distributed system. It is an important component of microservices architectures, where applications are divided into smaller, independent services that communicate over the network.
A service registry serves as a central repository for metadata about each service, including its address, port number, protocol, and API version. When a service is started, it registers with the service registry, and when it is stopped, it is removed from it.
Other services in the architecture can then query the Service Registry to find out which services are available and how they can communicate. This reduces the complexity of managing distributed systems and improves scalability and flexibility
Service Broker
A broker in the services world refers to a software tool or mechanism that acts as an intermediary between different services or applications. A broker is typically used in a service-oriented architecture (SOA) to facilitate and manage interaction and communication between different services.
A broker provides various functions, such as message routing and transformation, monitoring, and security management. The broker can also perform tasks such as caching messages and routing requests to the most appropriate service.
In an SOA environment, applications or services may communicate using different protocols and transports, and the broker acts as an intermediary to ensure that messages are exchanged correctly and reliably between the different systems. The broker can also help improve the scalability and flexibility of services by providing centralized control and management of service interactions.
Implementation of a service registry and broker in
NoPE
by therpcManager
.A service in
NoPE
is defined by anid
. This usually corresponds to a name with which the service is to be addressed.In order to implement the required functionalities of a service registry, the
rpcManager
has the following methods and attributes:registerService
: This can be used to register services. These are then made available to all participants of the NoPE network.unregisterService
: This can be used to remove services from the network.services
property provides an overview of which services are available (including frequency and their parameters and description).serviceExists
method can be used to test whether the service is available.performCall
execute a service. All relevant communications are mapped by therpcManager
. The user does not know which runtime provides the service.task
which can be aborted bycancelTask
. This leads to an exception at the calling unit.selectors
master
(seeconnectivityManager
) the master must execute the processfirst
: any provider executes the serives (the first in the list)dispatcher
: a specific dispatcher must run the service (defined by its id)host
: a dispatcher on the defined host.cpu-usage
: the dispatcher with the least CPU usagefree-ram
: The dispatcher with the lowest RAM usagecallbacks
can also be hosted via a pluginAuthor
M.Karkowski
Export
INopeRpcManager