Skip to content
Art2link ESB v2.02 LTS HomeDocumentationBlogContact
Patterns/Foundational messaging/Point-to-point channel

Point-to-point channel

One producer, one consumer, delivered once. The message is published to the bus and a single subscription carries it to one send port — the simplest channel there is, and the right default when a feed has exactly one destination.

A point-to-point channel links a single producer to a single consumer. The receive port publishes a canonical message; exactly one send port subscribes; the bus delivers it once.

In Art2link you do not build a special “point-to-point” artifact for this — it is publish-subscribe with a subscriber count of one. What keeps it point-to-point is restraint: don’t hardcode the destination into the producer. Keep the producer ignorant of who listens, and the day a second consumer appears it is a new subscription, not a rewrite.

Producer receive port BUS one subscription Send port Consumer

Everything else still applies: the send port owns guaranteed delivery and retry, and the consumer should be an idempotent receiver because even a single channel can redeliver.

In Art2link this is a single send port whose subscription names the message type and nothing else. A nightly settlement file published as SettlementFile reaches exactly one SFTP send port:

EXPRESSIONsettlement send port
{{Message.MessageType}} == "SettlementFile"

One publication, one subscriber. The day a second home is needed it becomes a publish-subscribe shape — another subscription, never an edit to the producer.

It is a policy, not a mechanism. One subscriber today; keep the producer unaware of it and the channel becomes publish-subscribe for free the moment a second consumer is needed.