|
Windows or Linux Hosting
Which is "better"? Windows or Linux?
I will not even pretend on attempting to give a definitive answer to such a
question. I don't think there is one, or at least not in the "this one
is better" formula. Like with most things, each side will have its strengths
and weaknesses, its advantages and disadvantages.
It's often been said that Linux is more secure and much more stable in general,
although there is no Linux per se, but many flavors of it. Linux users tend
to be sometimes fanatic in their support for their favorite operating system.
The power of their convictions may be very impressive, but that shouldn't be
the only reason to believe they're right. On the other hand, the average Linux
user is somewhat more knowledgeable than the average individual when it comes to computers,
so there's a higher chance that he knows what he's talking about.
On the other side, Windows doesn't seem to have that many true fans or they're
not that vocal. This might be explained by the fact that the Microsoft company
has been involved in quite a few suits which have affected its image, and consequently
the image of its products as well.
Desktop vs Server - stability
Many people who are just taking their first steps in "the wonderful world
of hosting", assume that, because their desktop computer or the computer
that will be used to create the web pages uses Windows, they must look for
Windows hosting. That's not true at all. The pages can be created in Windows
and hosted on a Linux box and vice versa. There's no problem with that.
Also a confusion/over generalization that is often made is that Windows is
just Windows and that it is very buggy, unstable and insecure. There is no Windows
though. There are many types of Windows, and they are not the same.
Both Windows 95 and Windows 98 were and are haunted by the dreaded and widely
known (though not highly acclaimed) blue screen. While a blue screen would not
be a very bad thing, what is bad about it is that you never seem to be able
to get out of it. The only thing you can usually do is to reset the computer.
Without any shadow of a doubt, the frequency of the blue screens was and is
impressive on the fore-mentioned operating systems, but what's more bewildering
about them is that they seem to appear almost "out of the blue" (pun intended) .
I'll give you one example that I've witnessed on a computer that was running
Windows 98. Everything was OK, the computer started. A few applications that
were always on were loaded as usual (an antivirus, a dictionary and a few other
things). The computer was left idle for minutes while my friend and I were talking.
When we looked at the screen, it was "blue". Yes, the blue screen
was present, signaling a problem and the PC had to be restarted.
Now, what was wrong? What could've been wrong? The applications that were running
have never caused any problems before, and nothing "exotic" was running
at that time - not to mention that no one was actively using the computer. It's
this kind of things that give the Windows family of products a bad name.
Windows XP is a great step forward when it comes to stability and apparently, the main reason for that is that it is based on Windows 2000, which is an OS (operating
system) designed for servers. Stability on Windows versions that were designed
for servers is much better than the one for desktop (95 & 98 & Me).
This goes to prove that Windows 2000 and Windows 2003 are not your average desktop
operating system, they are playing in a different league.
Performance
Comparing Windows and Linux, one thing that has been often noted is that Linux
handles high numbers of processes running at the same time much better than
Windows - that Windows' stability decreases faster when more processes run on
the machine.
This in the end means that Linux might be able to squeeze more out of the server,
but in the hands of a knowledgeable system administrator, a server will perform
very well, regardless of the operating system, may it be Windows or Linux.
Linux is free while Windows is all about the money
This is a very popular view on things. Linux is open source and thrives because
of the work of many volunteer programmers. The volume of work they put in and
the quality of their work can only be commendable.
Windows, just like Linux, is a product created by the work of many programmers.
They however are hired to do a job and they are paid to do it. Microsoft is
their employer - a business - and, like any other business, its goal is to make
a profit - to make money. That's not seen as a bad thing for any of the small
businesses out there, but it is sometimes seen as one when it comes to big companies,
especially when the word monopoly comes to be associated with them. Sure, Microsoft
did a thing or two do be seen as a "bad guy", but let's not get into
that.
Then, which one should you look for?
The decision of going for Windows hosting or Linux hosting should be based
on actual needs, not myths. More often than not it should be based on the knowledge
that you and/or your staff/business partners/friends have, on the things that
you plan do to with your website or on the things you'd prefer to learn.
Basic, static web pages are written in HTML (HyperText Markup Language) which
the browser interprets into the web pages as we see them, containing text, tables,
images and so on. Pure HTML pages can be hosted on any type of web server, regardless
of the operating system.
Dynamic, interactive web pages however, are a different kind of beast and they
require powerful programming languages. Now, don't confuse dynamic with animated.
There may be animated objects such as gifs on the web pages, but that doesn't
make them dynamic. Dynamic pages are those of a forum, of a shopping cart etc.
where you send information to the server and the server will store it and do
things differently, in accordance with that information.
Some such programming languages are Perl, PHP, ASP, Python, Java etc. PHP and
ASP are special with respect to this article due to their popularity and more.
PHP is open source and free, while ASP is a Microsoft product.
While the developers of PHP took the necessary steps to make PHP usable on
Windows based machines, Microsoft apparently (and unsurprisingly) saw little
reason to make ASP usable on anything else than Windows.
Other companies and people are working on to port ASP on others operating systems,
but, while their efforts are definitely appreciated, and they have already made giant steps
towards their goal, the solutions so far are only partial. Full use of ASP functions/capabilities
on other operating systems besides Windows is not available yet.
One cross-platform ASP attempt is Sun
Java System Active Server Pages. Another attempt is Apache-asp.org.
Because Apache is the preferred web server for Linux, Apache-ASP makes a lot
of sense.
To date, as I said, ASP and ASP.NET are fully usable only on Windows. I will
try to stay on top of this and find out when a complete, ready for production,
cross platform solution will be released by a company or anyone else for that
matter, but until that time, if you plan to use ASP, you'd better stick to using
Windows for your hosting. It's the safer choice.
PHP
PHP was developed by the open source community, much of which is gathered around
Linux. Linux, Apache, PHP and MySQL form a well known combination and they are
known to work very well together.
Fortunately PHP works well on the Windows-IIS (Internet Information Services)
platform too, which means that PHP scripts will work on a Windows machine as
well (although a few changes in the scripts might be necessary).
PHP gained its popularity quite rapidly and it is renowned for being free,
fast and powerful. Add to that the big number of scripts (many of which are
free) that are written in PHP, the abundant information on just about every
PHP related subject, and you can understand why PHP becomes the choice
of ever more users.
Making the choice
Windows as a hosting platform has at least one big advantage: full use of ASP
and ASP.NET. If your plan to use ASP because your employees know ASP or because
it does a better job for your specific application, Windows hosting is the best
choice right now.
Good thing is that PHP is not confined to Linux and it works quite well on
Windows. If, at a later time, you decide to use PHP for certain things, you
can do so without much worry, provided that your host has PHP on that server,
of course.
Back to Linux - while it is not yet able to take full advantage of ASP, it
is a very popular choice as an operating system for web servers. It is widely
acclaimed for its stability and that has to count for something. While Windows'
instability, although it might be somewhat anecdotal, is a subject that is often
discussed, Linux's stability is almost undisputed.
Price and availability
Although Linux is known to be free and it basically is, some disputes over
total cost of ownership as an operating system for web servers, do exist. Certain
studies revealed that Windows might be cheaper to use than Linux in time and
under certain conditions. Not surprisingly though, the sponsor behind these
studies was Microsoft (in one form or another). Of course, counter studies exist
also and they - of course - state the exact opposite. There's a war out there,
you know? 
If you want to read more about this you could try searching on Google
for "windows linux cost of ownership".
While the "big guys" run their numbers and fancy extrapolations,
in the real world, for one reason or another, Linux hosting is generally cheaper
than Windows hosting, meaning that a dedicated server running Linux will cost
less than a dedicated server running Windows. Moving this into the "shared
hosting" space, one can obtain more web space and data transfer for the
same amount of money if he chooses Linux.
Now, another thing to notice is that most hosts offer Linux based plans, so
finding a good Linux hosting company might prove easier. Not that there's a
lack of hosts offering Windows hosting. No! There are thousands of hosts out
there and there's a serious offer of Windows hosting, just not in the numbers
that Linux is.
So, what then?
Personally I would use Linux as the "default option" because of its
widespread use, renowned stability, reliability and level of security and -
why not mention - lower costs. However, some things are not available on the
Linux platform. If your needs cannot be fully met by a Linux server, but they
can be by a Windows server, then that's the time when Windows will definitely
be the better choice.
|