18 May 2012 CI Team

 

Redis belongs to the NoSQL data banks and you will find it in the group of Key-Value Stores. Redis is often named “Blazing Fast” and according to the Stackoverflow Thread it is used to be two time (while writing) and three times (while reading) quicker than MongoDB. Even if the comparison is a little bit unfair (Document data bank vs. Key-Value).

Redis is going to be ported on Windows (and maybe also implemented as an Azure Service)

It isn’t a secret that the Microsoft Open Source department is working on running Redis on Windows at all. A first concept was published last week. Microsoft sheared there results on GitHub – even if there is still a long way to go before the productive use on windows.

Redis as an Azure Service?

 

One of the firs comments is already mentioning Azure:

image

the answer:

image

Let’s take a look when this could be reality: additionally there are already some Redis Hoster.

Getting Redis to run on Windows

Before it will work in the Cloud it should work on our Windows surrounding. At the Moment (May 2012) you need to download this Dev Branch and open the RedisServer.sln with Visual Studio:

image

You need to build the Solution (consisting of C ++ Projects):

image

Depending on your configuration you will receive the msvs\Debug folder or the msvs\Release folder. The folder contains numerous files including the redis-server.exe.

Start the Server

After the Start of the Server you will see the Server Port (a little bit hidden but still there)

SNAGHTMLd00e987

Redis & .NET AKA play around with API

Advance notice: I do not know what to do with Redis it is just pure interest and ludic drive.

image

For demonstration I’ve created a simple MVC project and searched Redis via NuGet:

Service.Stack.Redis – sounds good!

SNAGHTMLd040daa

Democode:

 public ActionResult Index()
        {
            RedisClient client = RedisClientFactory.Instance.CreateRedisClient("localhost",6379);
            client.Add("Test", Guid.NewGuid());

            var result = client.Get<Guid>("Test");

            ViewBag.Message = "Welcome Redis: " + result;

            return View();
        }

E voilà! A GUID:

image

And there is also something going on in the console:

SNAGHTMLd074196

When should I use Redis? What is good? What is bad?

Because I’m not that experienced at the moment I would like to collect the oppinions on KnowYourStack.com: Why should I use Redis? What is good? What is bad?