IIS - multiple host aliases for the loopback adapter 127.0.0.1

Scenario: ARR listening on port 80 set to load balance multiple sites listening on different ports on local host

Problem: Server Farm will refuse to add multiple localhost addresses - it does not use port number to differentiate between host aliases

Solution: locate the Windows\System32\drivers\etc\hosts file and add for example the following:

127.0.0.1	localhost1
127.0.0.1	localhost2
127.0.0.1	localhost3
127.0.0.1	localhost4

This will make the above aliases point to localhost

Installing redis on windows

A quick reminder (mainly for myself) on how to setup redis on windows

  1. Get the latest release of redis from https://github.com/MSOpenTech/redis (downloading from github may be tricky, so in order to download https://github.com/MSOpenTech/redis/tree/2.8/bin/release/redis-2.8.12.zip just go to https://github.com/MSOpenTech/redis/raw/2.8/bin/release/redis-2.8.12.zip; 2.8.12 was the current at the time of writing so the links will die at some point); archive contains a step by step guide on how to set up the redis, so you can actually skip reading already ;)
  2. Extract the executables to some location of choice, for example c:\redis\version
  3. Create a folder for the db data (by default redis will store the files where the executables reside)
  4. Copy the redis.windows.conf and rename it as needed - this is a redis instance cfg; some settings worth considering:
    • dir - specifies the db files folder (by default redis will store the files where the executables reside)
    • port - the default one is 6379
    • maxmemory / maxheap - from the cfg itself: the maxheap flag controls the maximum size of this memory mapped file, as well as the total usable space for the Redis heap. Running Redis without either maxheap or maxmemory will result in a memory mapped file being created that is equal to the size of physical memory; The Redis heap must be larger than the value specified by the maxmemory
  5. Create a service using the redis-server.exe (the service will be configured as autostart and will be launched as "NT AUTHORITY\NetworkService"):
  6. redis-server --service-install c:\redis\data\mydb\redis.conf --service-name testRedisService

This is pretty much it. The service should be properly configured and just needs to be started!

Symbolic links on windows

Sometimes it is useful to have a symbolic link - a link that behaves like it is a resource it links to (more info on symbolic links here). To create a symbolic link in windows use cmd and mklink command - its help actually says all that is needed ;)

For example:

mklink /H d:\link.txt d:\target.txt
will create a hardlink named link.txt on a drive d pointing to d:\target.txt; created link will appear as it was a file, not a link.