What is the most robust way to install and run Redis on Windows Server 2012? (Updated for 2018) - redis

I know this question has been asked before, but it was asked back in 2014. The proposed solution was running Microsoft's port of Redis. However, that port hasn't been touched since 2016.

OK... that answer is Good and Official but this one is the future.
Windows Linux Subsystem supports fork (the reason they say it is not recommended) and I was able to run the RQ tutorial on my Windows 10 laptop.
https://learn.microsoft.com/en-us/windows/wsl/install-win10

As far as I can tell, "Not Recommended" is the official answer:
https://redislabs.com/ebook/appendix-a/a-3-installing-on-windows/
Before we get into how to install Redis on Windows, I’d like to point
out that running Redis on Windows isn’t recommended, for a variety of
reasons. In this section we’ll cover these points:
Reasons why you shouldn’t be running Redis on Windows. How to
download, install, and run a precompiled Windows binary. How to
download and install Python for Windows. How to install the Redis
client library.
But even that ebook page (next page) points to the now archived MSFT Redis project.
I would go with running Redis in Docker
https://hub.docker.com/r/_/redis/

Related

Run Redis server as service on Window 10?

I was able to run the redis server through the Windows Subsystem for Linux following this guide: https://medium.com/#RedisLabs/windows-subsystem-for-linux-wsl-10e3ca4d434e.
But I do not fully understand how the subsystem works. I thought it would run the server on Windows and I could see this in the Windows Services which is not the case. Can someone tell me how to run Redis as a service.
EDIT
Does someone know if there is a standard way to download and install Redis for windows other than using the WSL? I have seen some guides, but they are outdated.

REDIS server requirements for BlueDomino hosting

I have a Python / REDIS service running on my desk that I want to move to my Blue-Domino-hosted site. I've got Python available on the server, but not REDIS. They don't give me root access to my Debian VM so I can't git, extract, and install myself from a Unix prompt.
Their tech support might do the install for me, but they need me to point them to server requirements, which I don't see on the REDIS download page.
I could probably FTP binaries to the site if they were available, but that's dicey.
Has anyone dealt with this?
Installing Redis is actually quite easy, from source. It doesn't have any dependencies, so just download the tarball, unzip it, and follow the install instructions. I'm always afraid of doing that sort of stuff, but with Redis it really was a breeze. If you don't dare to do it their tech support should be able to do it.
If it is Intel/AMD server, you can compile the Redis somewhere (32 bit version for example), and upload it as binary. Then start it with Python. I did this myself couples weeks ago.
For port you will need to use something over 1000. I don't recommend to use default port. Remember to change LogLevel too. Daemonize works well as non-root too.
Some servers blocks all external ports, so you will not be able to connect to Redis from outside, but this will be a problem only if you connect from different machine. For same machine should be OK, since is "internal".
However, I am unsure how hosting administrator will react when he sees the process running :) I personally will kill it immediately.
There is other option as well - check service like Redis4you.com . But their free account is small, you probably will need to spend some money for more RAM.
Is your hosting provider looking for a minimum set of system requirements for running Redis? This is indeed not listed on the Redis website. Probably because there aren't many exotic requirements. Also it depends a lot on your use case. Basically what you need to run Redis is:
Operating system: Unix like, Linux is recommended (one reason to favor Linux I've heard of is the performance of its TCP/IP stack)
Tools: GCC, make, (git).
Memory: lots (no seriously this depends on your use case, but because Redis keeps everything in-memory you need a least more RAM than the size of your dataset).
Disk: disk access for making snapshots.
The problem seems to be dealing with something non-traditional with my BlueDomino hosting. Since this project is a new venture, I think the best course for me is to rent a small Linux VM from rackspace and forget about the BD hosting.

is Redis stable on Windows?

This afternoon, I used python script to test the performance of Redis on Windows.
It worked normally when the number of threads was only 10, but some exceptions occured when the number of threads reached 100.
Exception message:
3 [main] redis-server 1448
_cygtls::handle_exceptions: Exception: STATUS_A CCESS_VIOLATION 1394 [main]
redis-server 1448 open_stackdumpfile:
Dumping stack trace to redi
s-server.exe.stackdump
Is Redis stable on Windows?
Redis is not officially supported on Windows. Some unofficial ports exist (such as the one you're using), but I believe stability is not guaranteed for these ports.
Redis prime dev Salvatore Sanfilippo ('antirez'), December 2011:
I don't think Redis running under win32 is a very important feature. It is cool to have a win32 port that can be used for testing, as we had before, and as we have in a different implementation thanks to the Microsoft patch, so developers using Windows can easily test Redis and develop their projects. But what is the point in providing a production quality win32 port?
Regardless, parties within Microsoft are still improving the Windows build
Here’s to the first release from MS Open Tech: Redis on Windows
Claudio Caldato 26 Apr 2012 12:01 PM 8
We consider this not to be production ready code, but a solid code base to be shared with the community to solicit feedback: as such, while we pursue stabilization, we are keeping the older version as default/stable on the GitHub repository. To try out the new code, please go to the bksavecow branch.
The Redis download page now says "The Redis project does not directly support win32/win64, however we look at interest to projects trying to make a win32/win64 port that is separated from the main project...Currently both ports are not production quality but can be used for development purposes..."
We maintain a stable and production ready Windows port (native!) of Redis.
The Developer Edition is free.
Check out Memurai.
see:
Redis on Windows stable and reliable
I use it in my projects till last month and didn't experience any problems yet.

dokan sshfs for windows

I read an article here about dokan sshfs for windows. I want to ask if you know similar software (free or not) in order to access windows partitions from windows. Samba is a always an answer, however I am seeking for something more secure.
You can use the Dokan SSHFS client with the OpenSSH server for Windows, you can configure OpenSSH like you would on UNIX, then use the Dokan SSH client to connect remotely, just as you would do on UNIX with sshfs.
When you say Samba, so you mean SMB? Samba is the *NIX client/server for SMB.
SSHFS for accessing Windows partitions from Windows ? Did you by any chance mean Linux partitions from windows ?
If windows-windows, then sorry, no. sshfs is a Linux/Unix feature, and microsoft does all it can to NOT make it work on Windows (after all, that would allow to easily and securely migrate from Windows to Linux). On Windows, you use WebDAV to accomplish similar things, needless to say WebDAV is way more insecure than sshfs.
If you meant accessing remote Linux partitions from Windows, then I had the same problem before:
Dokan doesn't work, at least not on Vista x64. (epic bluescreen crash)
The java sshfs explorer on sourceforge doesn't work, either.
Microsoft's services for unix (including sshfs) are only available on Vista 'Ultimate', not on < Ultimate, like my Vista business for example.
There are some commercial solutions, but first, they are way overpriced, and second, I wouldn't trust them, since they don't offer evaluation.
My solution was to install VirtualBox on Windows, and install an Ubuntu guest on it, mounting the host's C drive. You need to set the VirtualBox network adapter to bridged mode to make sshfs work with virtualization. I'm sorry, but so far that's the only free solution that really works...
imdisk driver, see if http://www.ltr-data.se/opencode.html helps.
From the documentation
It is even possible to boot a machine
with NTFS partitions using a Unix
Live-CD and use the included devio
tool to let ImDisk on another computer
running Windows on the network mount
the NTFS partition on the machine you
booted with the Unix Live-CD. This way
you can recover information and even
run chkdsk on drives on machines where
Windows does not boot.
I've been using Win SSHFS for awhile, is this what you're looking for?
https://github.com/Foreveryone-cz/win-sshfs/
It runs on top of Dokany

Production Grade Server Software

I am currently using XAMPP to test and Run my website on my Laptop.
Is there any (Good,Production Grade,Free,AMP based) server software?
Or Can I manually fix the security holes in XAMPP (like no password for 'root') to bring it up to production level?
Platform : Windows
Technologies: Apache, MySQL, PHP
Requirements: Hosting on Own server
Priveleges: Easy installation and configuration
You're best off just setting things up yourself. It's not that difficult, especially since there are scores and scores of guides around the web. Trying to bring XAMPP up to production quality would be just as much work. Here are some links:
Ubuntu LAMP
Debian LAMP
Fedora LAMP
Arch Linux LAMP
WAMP (Windows)
You can easily find more by doing a Google search.
Why not simply use official Apache? It's the most-used Production http server in the world.
Can you expand your question with details on your platform and requirements?
You would be better off configuring the full stack yourself. This ensures that you know what's running, and how it's configured. Even if you use a bundle (I highly recommend Zend Server if you do), you would need to run through the service configurations anyway. Never rely on anything out-of-box in a production environment.
If you do configure the stack yourself, Google is your friend, and there are plenty of resources here to help as well.