1 Component connectivity
The field srv declared in an artifact is used to describe the connectivity of a component, that is, the set of channels it exposes.
This field follows the Links type alias definition:
1.1 Duplex channels
In addition to client and server channels, an artifact’s srv section can also define a duplex channel. Conceptually, duplex channels code both a client and a server channel. They are designed to model endpoints used to initiate requests as well as serve them. Duplex channels are useful in scenarios where a group of instances must carry out complex coordination protocols (e.g., consensus), and each one of those instances plays both a “client” and a “server” role.
1.2 Examples
A full example of an artifact defining client, server and duplex channels is as follows: