Redis 6.0 has already been released and comes with several notable improvements

The new version of Redis 6.0 is now available after four months of the release of the RC1. For those unfamiliar with Redis, you should know that this is a scalable key value database management system written in ANSI-C and distributed under the BSD license.

This stable version comes with notable modifications to new features, such as the new RESP3 protocol, the function "Client-side cache", ACL (access control list), Redis commands, RDB files, etc.

Redis 6.0 Key New Features

One of the main novelties of this new version is RESP3, a new optional protocol, which according to its developerss was necessary because the old protocol, RESP2, was not semantic enough. The main idea with RESP3 was the ability to return complex data types directly from Redis, without the client having to know which type to convert the "flat arrays" or the returned numbers instead of the appropriate Boolean values, and so on.

Another new feature in Redis 6.0 is ACL which is Intended for isolation to protect data from application errors. The good thing about this addition is that there is now a Redis module interface for ACL, which allows you to write custom authentication methods.

Enhanced Cache on the client side, is another of the novelties of this version, since has been redesigned yhdropped the niche caching approach in favor of the use of codenames, which, are the best approach. Besides that, the function was supplemented by the "transmission mode"It could be very useful to add a new mode that requires the server to hold little to no state on clients.

When using transmission mode, the server no longer tries to remember the keys requested by each client. By contrast, customers subscribe to key prefixes. The result of this change is that there are no more messages, but only for the selected prefixes and there is no memory effort on the server side.

Also, the "opt-in / opt-out" mode is now supported, so users not using broadcast mode may tell the server exactly what the client will cache to reduce the number of invalidation messages.

On the other hand we can find ACL improvements, that in the first place, a new ACL LOG command now allows you to see all clients that violate ACLs, which access commands that they should not and which access keys that cannot be accessed or whose authentication attempts have failed.

In second place, ACL GENPASS function has been reimplemented, it now uses SHA256 based HMAC and accepts an optional argument to tell the server how many unusable pseudo-random string bits it wants to generate. Redis generates internal key when / dev / urandom starts up and then uses HMAC in counter mode to generate the other random numbers: this way you can abuse the API and call it whenever you want, because it will be very fast, explained the programmer.

The PSYNC2 enhancement allows Redis to now partially resynchronize more frequently. In fact, you can now reduce the final PINGs in the protocol, so that replicas and masters are more likely to find a common offset.

Improved Redis commands with time delayNot only BLPOP and other commands that previously accepted seconds now accept decimal numbers, but the actual resolution has also been improved to never be less than the current "HZ" value, regardless of the number of connected clients.

Finally another of the important changes of this version are the aImproved RDB files, which are now faster to load. Depending on the actual composition of the file (larger or smaller values), you can expect a 20-30% improvement, depending on the developer. The INFO command is also faster now when multiple clients are connected, a long-standing issue that has finally been resolved.

Redis 6.0.0 has been available for download from its official website.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.