Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EventService

The EventService handles the event callbacks to send event data to all subscribers.

Something like the following will be useful:

def handle_event(event) do
  subscribers = Cache.get(event.name)

  Enum.map(subscribers, fn subscriber ->
    Task.async(fn ->
      HTTP.post(subscriber.url, format(event.body))
    end)
  end)
  |> Enum.each(fn pid ->
    Task.await(pid)
  end)
end

Tables:

  • Subscribers Columns: event_name, url

    Index on event_name to ensure quick lookups

To start your Phoenix app:

  • Install dependencies with mix deps.get
  • Create and migrate your database with mix ecto.create && mix ecto.migrate
  • Start Phoenix endpoint with mix phoenix.server

Now you can visit localhost:4000 from your browser.

Ready to run in production? Please check our deployment guides.

Learn more

About

Network/Events/EventService for triggering event handlers

Resources

Stars

0 stars

Watchers

3 watching

Forks

Releases

Packages

Contributors

Languages