I am needing to set up a Redis server, how much RAM do I need to allow for the server?
closed as not a real question by Chopper3 Dec 7 '11 at 14:36
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center. If this question can be reworded to fit the rules in the help center, please edit the question.
I'm buying a car, how many seats do I need?
In general, take whatever you think you might possibly need and double it. Hardware is cheap. It's a lot easier to drive around with a few extra seats than it is to add seats later.
I would recommend installing redis on something, your laptop, whatever you have available now.
Then generate some nontrivial amount of data shaped like what you plan to store on the eventual server. Say 100,000 values. Then, load that into redis in the way you expect your application to.
Then, see how much memory redis is using:
And use that to estimate how much memory you will need based on the amount of data you want to plan for. You need to leave some spare memory for the OS and other core systems to function. I would leave at least a couple GB of memory for those.
If you run redis at half or more of the system memory you will want to read about enabling this in your /etc/sysctl.conf file:
There is more information about why that is necessary on the redis FAQ:
There are tricks for getting more data into redis using certain data structures to limit memory usage. You can read about that on their FAQ and blog.