Phoenix.PubSub
Distributed PubSub and Presence platform for the Phoenix Framework
Installation
-
Add phoenix_pubsub to your list of dependencies in
mix.exs:def deps do [{:phoenix_pubsub, "~> 1.0"}] end -
Ensure phoenix_pubsub is started before your application:
def application do [applications: [:phoenix_pubsub]] end
Initialization (without Phoenix)
defmodule MyApp do
use Application
def start(_type, _args) do
import Supervisor.Spec, warn: false
children = [
supervisor(Phoenix.PubSub.PG2, [MyApp.PubSub, []])
]
opts = [strategy: :one_for_one, name: MyApp.Supervisor]
Supervisor.start_link(children, opts)
end
endTesting
Testing by default spawns nodes internally for distributed tests.
To run tests that do not require clustering, exclude the clustered tag:
$ mix test --exclude clusteredIf you have issues running the clustered tests try running:
$ epmd -daemonbefore running the tests.