Which Operating System provides Tomcat 5.5 with MySQL the best performance, etc for a serious small business web site:
One of the Linux Distros/versions
Windows 2008 Web Edition
Windows 2008 Std Edition
Windows XP Pro SP3 (apparently there is a 10(40 with hack) connection limit on this one).
Also, will the difference in performance be significant enough to override ease of installation and administration? We are attempting to move a Tomcat 5.5.20 development/test web site from a XP SP3 workstation onto a virtual machine running one of the above OS's as a guest operation system.
Well, since the performance differences across these OSes on modern hardware are practically nil, I would say that only ease of administration counts for what you are looking for. So that leaves your favorite Linux distro as the best choice.
On one level I am pleased to hear that. That being the case, we will be leaning toward a Web Edition of Windows Server.
For me as Windows system adminstrator, its easy to install Tomcat/MySQL/Java on Windows, about 10 minutes tops, with two manual changes to environmental variables. We've had to disable Windows UAC on 2008, plus there is a problem installing MySQL on 64 bit Windows 2008 unless we choose the Developer model.
I have yet to try installing it on any Linux distros, as there doesn't seem to be a definitive way to do it from all the documents I've read with lots of caveats. I am not sure what problems the developer will have configuring it for Linux, he having developed it on XP. Also, it seems easy to find detailed instructions on creating database connections with PHP to MySQL and .NET/ASP to MS SQL Server, but not Tomcat to MySQL except for happening upon posted configuration files without much written explaination.
However, I'm going to attempt installing Tomcat and MySQL on several Linux Distros this weekend, having put it off for months. I already have several Linux distros installed as VM's on ESX 4 with snapshots, including SLES11 and RHEL5. Unfortunately, both SLES and RHEL evaluations have timed out, so I may not be able to download the binaries and will have to try to install from Source. From what I read, installing from source may be better anyway.
Rich Hunter wrote:Unfortunately, both SLES and RHEL evaluations have timed out, so I may not be able to download the binaries and will have to try to install from Source. From what I read, installing from source may be better anyway.
If you want RHEL but don't want to pay for support, use Centos. Building Linux from source is not recommended unless you want a full-time job hunting down which kernel options do what. (Note: if you are running any sort of production service, support may be worth the price)
Installing Tomcat on a *nix server is almost identical to installing it on Windows: Unzip Tomcat, run startup.sh. There's a lot more you can do with Tomcat (mostly security related) such as creating a user to run it, setting it up as a daemon (service) and so on, but that's optional.
Personally, I don't recommend using Windows for production servers, since Windows is nothing but one security patch after another. Whatever time you save from alleged "easy installation" is more than made up by the requirement of continually riding herd on the OS. But that's my own silly little prejudice, and I realize that the number of production Windows appservers is not likely to plummet anytime soon.
If installing Tomcat in Linux seems difficult, that's just because you're not as comfortable with Linux as with Windows. As far as it goes, I'd have to go back and RTFM to get Windows to run Tomcat as a service, but I run multiple Tomcat servers without a second thought. It's simply a matter of what you're used to.
MySQL is slightly more comfortable on Linux boxes, since that's its background. Then again, SQL Server doesn't run (native) on Linux at all. Such is life.
But a WAR is a WAR, and Java is "write once, run anywhere". I've developed webapps for years using a Windows XP desktop and Linux and Solaris production servers. As long as you don't hard-code OS-specific things (like references to "C:\Program Files"), the exact same WAR file can run on any of those platforms.
An IDE is no substitute for an Intelligent Developer.