Any reason not to use Redis 32bit (as opposed to 64-bit), with the exception of the 4 GB limit?

I am doing mem for a box in which, among other things, I run multiple instances of redis. Therefore, I am thinking about switching to Redis 32bit, as this should save me quite a bit of ram.

from enter link here

Redis compiled with a 32-bit target uses a lot less memory per key since pointers are small, but such an instance will be limited to 4 GB of maximum memory usage. To compile Redis as 32-bit binary use, do 32bit. RDB and AOF files are compatible between 32-bit and 64-bit (and between small and large limbs), so you can switch from 32 to 64 bits or vice versa, without any problems.

As stated in the quote, 4 GB is the maximum for a 32 bit redis instance, but I'm sure I don't. I use multiple instances of redis, each of which remains below the 4 GB limit, but I think this is not a problem (?)

Any other reason, such as performance, maybe I should look for?

+6
source share
1 answer

Using multiple 32-bit Redis instances usually works well. There are several disadvantages that you need to consider:

  • most users run the 64-bit version, so the 32-bit version is much less tested and deployed. This makes it less reliable, as it increases the likelihood that you will click an undetected error.

  • some operations are less efficient in 32 bits. For example, BITOP, BITCOUNT operations should be more efficient when they run on a 64-bit processor.

  • hard to set memory limit. Setting the maxmemory parameter is complicated because you also need to consider more than the size of your data (but also internal communication buffers, master / slave replication buffers, I / O buffers, etc.). If you are too optimistic (i.e., if you installed maxmemory too close to 4 GB), you will have a random crash when saturated with Redis memory.

You can also read what Salvatore said about this:

https://groups.google.com/forum/#!topic/redis-db/ThCVJdMrqCE

+5
source

Source: https://habr.com/ru/post/948866/


All Articles