Installation

In order to run the Snorky server you need a system with a working Python installation and a series of dependencies.

Supported systems

Snorky will work on any platform supported by Tornado. These include Windows, Mac, Linux and BSD.

In order to achieve the maximum performance in a production server, Linux and BSD are recommended, as they have fast event selection system calls which are supported by Tornado (epoll in Linux and kqueue in BSD). At the moment of writing Tornado does not support IOCP on Windows.

For development, any system is fine.

Which Python version should I choose

There are two versions of the Python language in use, the 2.x branch and the 3.x one.

Python 3.x changes a number of things, for example...

In Python 2 strings were byte-based and had arbitrary encodings, whilst strings in Python 3 are character-based by default in order to manage Unicode text better.

Some old features of the language were removed and other slightly modified. For example, print was an statement in Python 2 but it is a function in Python 3 and as a consequence, requires parentheses (i.e. print("Hello World"), not print "Hello World").

Although Python 3 has been out there for a long time, there are still some libraries that only work in Python 2. Still, it is possible to write code that works in both systems without changes, and many Python packages do this.

Snorky can work with both branches of Python. If you need to use any library which works only in Python 2, use that; in other case, use Python 3.