README.adoc

mangos v2

Mangos™ v2 is an implementation in pure Go of the SP
(“Scalability Protocols”) messaging system.
These are colloquially known as a “nanomsg”.

ℹ️

This is version 2 of mangos, and contains breaking changes and
rather different API in some circumstances relative to version 1. To use the
original version of mangos please see https://github.com/nanomsg/mangos

The original implementation of the SP protocols is available as
nanomsg™.

Generally (modulo a few caveats) all of these implementations can interoperate.

The design is intended to make it easy to add new transports with almost
trivial effort, as well as new topologies (“protocols” in SP parlance.)

At present, all of the Req/Rep, Pub/Sub, Pair, Bus, Push/Pull, and
Surveyor/Respondent patterns are supported.
This project also supports an experimental protocol called Star.

Supported transports include TCP, inproc, IPC, WebSocket, WebSocket/TLS and TLS.
Forcing the local TCP port in Dial is not supported yet (this
is rarely useful).

Basic interoperability with nanomsg and NNG has been verified (you can do
so yourself with nanocat and macat) for all protocols and transports
that NNG and nanomsg support.
Additionally there are a number of projects that use the two products together.