From 37dfb853f31cd926495e8b09f26b855350ed1b1b Mon Sep 17 00:00:00 2001 From: Christopher Date: Tue, 18 Feb 2020 09:17:36 -0600 Subject: [PATCH] add note about PubSub --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0334ed3..3d1ab1f 100644 --- a/README.md +++ b/README.md @@ -70,10 +70,12 @@ Wampex.start_link(name: Connection, session: session) The protocol uses a registered [WebSocket subprotocol](https://wamp-proto.org/_static/gen/wamp_latest.html#websocket-transport), there are several values available. You need to ensure that the [Router](https://wamp-proto.org/_static/gen/wamp_latest.html#peers-and-roles) that you connect to also supports the subprotocol. -### Details +### ImplementationDetails WAMPex currently maps each session to a seperate transport connection. This means there is a new conection per instance of WAMPex. +Internally WAMPex uses [Registry](https://hexdocs.pm/elixir/Registry.html#module-using-as-a-pubsub) for local PubSub. Subscriptions and Callees are registrerd with separate Registry instances, partitioned over the available system CPU cores. + The Session management is handled by a state machine, written using [StatesLanguage](https://github.com/citybaseinc/states_language). The JSON looks like this. ```json -- 2.45.3