Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cache recovery mode, delta encoding, channel medium layer #348

Merged
merged 70 commits into from
May 16, 2024

Conversation

FZambia
Copy link
Member

@FZambia FZambia commented Jan 2, 2024

Introducing sth like https://pusher.com/blog/introducing-cache-channels/, to help with centrifugal/centrifugo#745 - we now have RecoveryModeCache to move recovery behaviour into the new mode which only recovers latest publication in channel.

Another feature which occasionally araised here is delta compression - possibility to use Fossil algorithm to send delta updates in channels. See https://ably.com/blog/message-delta-compression for a good introduction into general idea here

And one more experimental concept of Channel Medium layer is also introduced here - it's a layer which provides useful per-channel tweaks. Opens a way to send delta updates in at most once scenario, queue and delay broadcast on channel level, optimize position sync in channels with many subscribers.

Would be nice to have separate pull requests for these three features – but it's a bit time-consuming to split at this point :(

Copy link

codecov bot commented Mar 23, 2024

Codecov Report

Attention: Patch coverage is 46.66667% with 32 lines in your changes are missing coverage. Please review.

Project coverage is 83.13%. Comparing base (69e4d52) to head (8917541).
Report is 33 commits behind head on master.

❗ Current head 8917541 differs from pull request most recent head 4e575c4. Consider uploading reports for the commit 4e575c4 to get more accurate results

Files Patch % Lines
client.go 50.00% 26 Missing and 2 partials ⚠️
options.go 0.00% 4 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #348      +/-   ##
==========================================
- Coverage   83.70%   83.13%   -0.57%     
==========================================
  Files          37       38       +1     
  Lines        7518     7645     +127     
==========================================
+ Hits         6293     6356      +63     
- Misses        909      965      +56     
- Partials      316      324       +8     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@FZambia FZambia changed the title Last message (state) recovery Cache recovery mode, and delta encoding experiments Mar 31, 2024
@FZambia FZambia changed the title Cache recovery mode and delta encoding Cache recovery mode, delta encoding, channel medium layer May 8, 2024
@FZambia FZambia marked this pull request as ready for review May 9, 2024 15:37
@FZambia FZambia merged commit 82b314f into master May 16, 2024
9 checks passed
@FZambia FZambia deleted the last_message_recovery branch May 16, 2024 17:27
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.

None yet

1 participant