Faster performance
Centrifugo PRO has performance improvements for several server parts. These improvements can help to reduce tail end-to-end latencies in application, increase server throughput and/or reduce CPU usage on server machines.
Faster HTTP API
Centrifugo PRO has an optimized JSON serialization/deserialization for HTTP API.
The effect can be noticeable under load. The exact numbers heavily depend on usage scenario. According to our benchmarks you can expect 10-15% more requests/sec for small message publications over HTTP API, and up to several times throughput boost when you are frequently get lots of messages from a history, see a couple of examples below.
Faster GRPC API
Centrifugo PRO has an optimized Protobuf serialization/deserialization for GRPC API. The effect can be noticeable under load. The exact numbers heavily depend on usage scenario.
Faster HTTP proxy
Centrifugo PRO has an optimized JSON serialization/deserialization for HTTP proxy. The effect can be noticeable under load. The exact numbers heavily depend on usage scenario.
Faster GRPC proxy
Centrifugo PRO has an optimized Protobuf serialization/deserialization for GRPC API. The effect can be noticeable under load. The exact numbers heavily depend on usage scenario.
Faster JWT decoding
Centrifugo PRO has an optimized decoding of JWT claims.
Faster GRPC unidirectional stream
Centrifugo PRO has an optimized Protobuf deserialization for GRPC unidirectional stream. This only affects deserialization of initial connect command.
Examples
Let's look at quick live comparisons of Centrifugo OSS and Centrifugo PRO regarding HTTP API performance.
Publish HTTP API
In this video you can see a 13% speed up for publish operation. But for more complex API calls with larger payloads the difference can be much bigger. See next example that demonstrates this.
History HTTP API
In this video you can see an almost 2x overall speed up while asking 100 messages from Centrifugo history API.