Centrifugo v2.5.0 Release Notes
Release Date: 2020-05-11 // almost 4 years ago-
No backwards incompatible changes here.
๐ Starting from this release we begin migration to new
offset
uint64
client-server protocol field for Publication position inside history stream instead of currently usedseq
andgen
(bothuint32
) fields. Thisoffset
field will be used in Centrifugo v3 by default. This change required to simplify working with history API, and due to this change history API can be later extended with pagination features.๐ Our client libraries
centrifuge-js
,centrifuge-go
andcentrifuge-mobile
were updated to supportoffset
field. If you are using these libraries then you can updatecentrifuge-js
to at least2.6.0
,centrifuge-go
to at least0.5.0
andcentrifuge-mobile
to at least0.5.0
to work with the newest client-server protocol. As soon as you upgraded mentioned libraries you can enableoffset
support without waiting for Centrifugo v3 release withv3_use_offset
option:{ ..."v3\_use\_offset": true}
๐ All other client libraries except
centrifuge-js
,centrifuge-go
andcentrifuge-mobile
do not support recovery at this moment and will only work withoffset
field in the future.๐ It's important to mention that
centrifuge-js
,centrifuge-go
andcentrifuge-mobile
will continue to work with a server which is usingseq
andgen
fields for recovery until Centrifugo v3 release. With Centrifugo v3 release those libraries will be updated to only work withoffset
field.๐ Command
centrifugo genconfig
will now generate config file withv3_use_offset
option enabled. Documentation has been updated to suggest turning on this option for fresh installations.๐ Improvements:
- ๐ support Redis Streams - radically reduces amount of memory allocations during recovery in large history streams. This also opens a road to paginate over history stream in future releases, see description of new
redis_streams
option in Redis engine docs - ๐ support Redis Cluster, client-side sharding between different Redis Clusters also works, see more in docs
- ๐ faster HMAC-based JWT parsing
- ๐ faster Memory engine, possibility to expire history stream metadata (more in docs)
- ๐ releases for Centos 8, Debian Buster, Ubuntu Focal Fossa
- ๐ new cli-command
centrifugo gentoken
to quickly generate HMAC SHA256 based connection JWT, see docs - ๐ new cli-command
centrifugo checktoken
to quickly validate connection JWT while developing application, see docs
๐ Fixes:
- ๐ fix server side subscriptions to private channels (were ignored before)
- ๐ fix
channels
counter update frequency in serverinfo
โ this includes how fastchannels
counter updated in admin web interface (previouslynum clients
andnum users
updated once in 3 seconds whilenum channels
only once in a minute, nownum channels
updated once in 3 seconds too)
๐ This release based on Go 1.14.x
๐ณ Docker images
- ๐ณ
docker pull centrifugo/centrifugo:v2.5.0
- ๐ณ
docker pull centrifugo/centrifugo:v2
- ๐ณ
docker pull centrifugo/centrifugo:v2.5
- ๐ณ
docker pull centrifugo/centrifugo:latest
- ๐ support Redis Streams - radically reduces amount of memory allocations during recovery in large history streams. This also opens a road to paginate over history stream in future releases, see description of new