Skip to content

Conversation

@edgurgel
Copy link
Member

@edgurgel edgurgel commented Dec 22, 2025

What kind of change does this PR introduce?

Create new process group library called Beacon that broadcast only group counts to other nodes. Actual pids are only available to the local node. It also supports custom adapter so that we can use PubSub for the broadcasting (including regional broadcasting).

The plan is to start using Beacon without any real changes and later on start using the group data for 3 things:

  • Connected stats
  • Max connected users rate limit
  • Connect & PG Changes check for online users for a tenant

TODO:

  • Write a proper README.md
  • Improve on docs
  • Add CI step to test Beacon

@edgurgel edgurgel changed the title Feat/beacon feat: beacon Dec 22, 2025
@coveralls
Copy link

coveralls commented Dec 22, 2025

Coverage Status

coverage: 88.124% (+0.1%) from 88.016%
when pulling 36c3250 on feat/beacon
into 05df771 on main.

@blacksmith-sh

This comment has been minimized.

@blacksmith-sh
Copy link
Contributor

blacksmith-sh bot commented Dec 23, 2025

Found 1 test failure on Blacksmith runners:

Failure

Test View Logs
Realtime.UsersCounterTest: failure on setup_all callback, all tests have been invalidat
ed › ** (MatchError) no match of right hand side value: {:error, {{:EXIT, {:boot_failed
, {:exit_status, 1}}}, {:child, :undefined, {:peer, :main}, {:peer, :start_link, [%{nam
e: :main, host: ~c"127.0.0.1", connection: :standard_io, longnames: true}]}, :permanent
, false, 5000, :worker, [:peer]}}}/stacktrace
View Logs

Fix in Cursor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants