Specifications for Server


I currently have two separate servers. Both are Windows XP. I need to combine both for ease of use. The first server is running a MySQL database we use internally for an enterprise application. We haven't updated it in a while so it sits on XP.

The other application uses a proprietary system for data storage and is incompatible with anything but Windows XP. I have called to highlight the stupidity of that, but to no avail. They are a world renown company and haven't bothered to update their software yet. I have tried forcing it onto later operating systems and it breaks horribly.

So this new system will have to run Windows XP, which I am not thrilled about. I thought about possibly virtualizing Windows XP but that makes data management and backup a pain and I eventually ruled it out.

So I am trying to assemble hardware for a server. This is a small office with 20 computers that will need to connect to it purely for access to these two services; I am not messing with AD yet, etc. Right now we see a serious lag when all terminals are active on the machine. It is only three or so years old, but buckles under the load. I find this odd, but it does.

I am wondering what the best specs are. I have never purchased a "dedicated" server before. I do want a RAID 1 configuration with 1TB on each drive. Entry level is what we need, though. When it comes to RAM and processor, however, I get lost. I figured I would find a copy of Windows XP x64 somewhere to try and increase the RAM capability.

I am wondering what the specs would be for a good entry level server that could support all of this. Hoping to keep it under $1,000. What is the more important, memory or processor? I realize that it is probably hard to say with the vague description, but as a general rule, would I be better settling for 4gb RAM and a higher processor speed, or taking a lower processor speed and putting more RAM in?

Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Lee W, MVPTechnology and Business Process AdvisorCommented:
This seems ill-advised.  I would suggest if you need a server, then you need a SERVER, not a WORKSTATION.  XP is not a server os.  It's a client.  With XP, you are LIMITED to 10 concurrent connections.  You could have problems going above that - not to mention be in license violation and held partially legally responsible if you set it up for the client.  

You want to do this right, do this right.  Get them a true server.  If the application fails to work with 2008 R2 or 2008, using Downgrade rights, you can use 2003 R2 - which generally speaking is a server version of XP.  Yes, you'll need CALs and no, there's no way you're doing this for under $1000.  Minimum cost for this would probably be about $2500 in hardware and licensing.  (and you'd have to get Server 2008 R2 via volume licensing so you could gain access to the media and key for 2003.

Somewhat unrelated, what kind of problems are you having with Virtualization - that should not be an issue unless the software works directly with hardware.
XP only allows upto 10 concurrent connections, no more. So you're going to encounter a problem there. Also i believe it is limited to 4 GB of RAM and 2 CPUs.

Exactly what didn't virtualize? Which virtualization platform did you try? Xen? VMware? Hyper-V? Why is data management a pain? you can virtualize the OS, but keep the storage on a SAN.

In terms of the MySQL database, the best performance gain would be to make sure indices are used properly, no temporary tables are created while doing joins and the buffers are fine tuned to your specific situation (have a look at http://mysqltuner.pl). With that in mind, larger buffers require more memory, so RAM would be a good way to go.

RAID 1 or RAID 10 is a good idea for high IO databases.

The data storage application probably won't need much CPU, if the data just sits there and does nothing else other than being retrieved from time to time. The database however would beneift from multiple cores and certainly RAM.

XP is old, like a decade old, continuing to use that is asking for trouble, have you tried the compatibility mode settings in later versions of Windows?

Anyway, hardware alone.. you're not going to get this for under $1000 USD..

If budget is a problem ,lease a server or rent monthly, either dedicated or virtual, that way whoever makes the decision can pay it from operational expenses rather than an investment source that has to be written off. It's usually easier to get permission for that.


Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It really sucks that your application requires XP, and that the vendor will not be updating it to work more effectively on a newer platform.

That said, you need to provide the specs for your current systems so the we'll know if there's any room for improvement: as others have noted, there are some strict limitations in the XP kernel itself--imposed by MS in order to distinguish between workstation and server deployment scenarios--that may be part of (if not entirely) the problem.

For example, although you indicate the current system's age at 3 years, your current budget suggests that sub-optimal hardware may have been purchased back then, so there may be LOTS of room for improving XP's performance on newer hardware.

The upshot, however, may be that your requirements to combine everything on an XP host, getting more performance, and doing it for <$1000 may be mutually exclusive of each other.
IT Pros Agree: AI and Machine Learning Key

We’d all like to think our company’s data is well protected, but when you ask IT professionals they admit the data probably is not as safe as it could be.

Gerald ConnollyCommented:
So it looks like its going to have to be 4GB RAM and the fastest dual core you can find. Use a real RAID controller (not one of those soft raid things) and make it RAID10, use smaller disks but more of them, to get the IOPS up.
jkeagle13Author Commented:

So taking as a foregone conclusion that I need a server, what do I do about the XP? I could do one with 8gb and use ESX to have a 4.5gb Server 2008 and a 3gb XP and reserve a half gigabyte RAM for the ESX host.

I am nervous about putting XP on it, however, whether on a stand-alone box or in a VM. It has been EOL since 2010. I worry about vulnerabilities. It has to be connected to the network by virtue of what it needs to do. I have tried the application on other OS's in a compatibility mode and it crashes; they somehow did a fantastic job at building it JUST for XP.

Is it safe to run XP? IT seems like a bad idea. Is there any security that can be taken to make running XP safer?

Your reticence to use XP is good. Your previous attempts to get the app running on a different OS is also the right approach. Luckily, your willingness to run 2 VMs may save your bacon...

Although XP does have EOL approaching, and you do need it on the network to serve its purpose, it should be possible to lock it down so that only the network port(s) that are needed for your application are exposed to any traffic (I hope it's not Internet-facing!) to minimize the "attack surface."

And while your concerns about XP are valid, if this app is not being updated, even the most secure OS might be compromised if the app itself has vulnerabilities that will never be addressed.

So go with your plan, but sandbox the hell out of it, and make sure your management understand the risks of sticking with the app as it exists.
If there is no other solution then to use XP, then deploy a firewall in front of it, or a software based IDS in the perimeter network, acting like an edge server and configure all ports to be closed by default and only open what you really need. With everything closed through an external machine you have successfully minimized the attack surface of your XP machine.

Locally you can / should do the same, get the latest service pack (i believe it is SP3) and remove everything from that server that you don't need. Automate daily audit- and administrative checks.

That leaves the application itself, does the app have a web-based interface? If so, you run the risk of it being poorly written and SQL injections could change your data. If so, you have to get a more advanced IDS to catch that as well.

- WS
You don't need to reserve that much RAM for ESXi. It uses only about 32MB... That is one of the advantages using that as Host compared to other hypervisors. Also, XP isn't EOL yet, unless you are only using SP2. Just install SP3 and it'll be good for into 2014. Apart from that if you have Windows 7 Pro or above you can install Windows XP mode (which is a VPC VM of XP) for free. That isn't the same as using "Compatibility Modes".
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Server Hardware

From novice to tech pro — start learning today.