HACKER Q&A
📣 ultra_nick

How could you build a server that will last 20+ years?


How could you build a server that will last 20+ years?


  👤 LinuxBender Accepted Answer ✓
In individual can not influence this at least not without a significant amount of money. The individual non-serviceable components on each circuit board in the server would need to be over-engineered to operate at full duty cycle for {n} years, meaning one could not use mass produced components. Those components would then need to be protected against all forms of EMF. Two examples of such engineering would be Voyager I and Voyager II. They were designed exactly in this manor. Aside from their nuclear batteries which should be mostly depleted by now the rest of the components should be good for long after they lose power. Cables and fasteners would also need to be engineered to last and have redundant contacts on every connection.

The components used in commodity servers utilize components that not only have a chance to fail but there are data sheets that predict when each component will fail based on the applied voltages, currents and temperatures. There are/were programs that could predict how long a device would last based on the component specs but I forgot what it was called. Something like OrCAD I believe. No idea if that still exists. I could not afford the license at the time 1990's.

Some people may have anecdotes of servers with 30+ year uptimes and that is certainly a thing, but that is entirely luck of the batch and luck of the environment and not in any way predictable. And this is just hardware. This doesn't even touch on aspects of BIOS/Firmware/Driver/Operating system fault handling and stability.


👤 simonblack
The older a system gets, the less 'up-to-date' it is. While there are actually companies out there that still use 50-year-old technology, they are few and far between.

I used to pride myself on long uptimes. Then I realised that you have to reboot the system anyway if you want to upgrade the kernel or system version.

That same thing applies to hardware. Can you still buy floppy disks, for instance? Maybe somewhere, yes. But not like they were available in every corner supermarket 20 years ago. CDs and DVDs, likewise. And what happens if you have all your backups on floppies (say) and you need to find a replacement floppy-drive just-right-now?

It might be possible to build a server that will last 20 years, but would you want to stake your business or your life on it?


👤 techdragon
Older designs are better for this. The tighter we push tolerances the sooner failures will happen.

Since you haven’t set any performance requirements… if you are happy with using a RTOS instead of something like Linux, you could look at super basic parts, no electrolytes drying out in solid state capacitors.

I’d be pretty confident a high end Arduino style Atmel/AVR based “computer” could be easily designed to last 20 years or even longer. Add some redundancy and dip switches or electronic fuses for failover to the replacement parts, as rare as such failures would be in older style designs.

Because we understand so much more about how the underlying mechanisms work, out of necessity in order to develop more advanced designs, but understanding these things means we could also develop older style things more reliably.


👤 andromaton
I'm assuming your concern is hardware longevity not obsolescence. Obsolescence will happen before 20 years because of speed, RAM and disk capacity inflation, and compatibility with latest operating systems.

Servers that have survived 10 to 15 years are quite common, 20 a lot less so.

Probably the easiest way would be to buy 2 "fairly good" identical servers, run one of them, and keep the other one off for spare parts. By fairly good I mean a branded server (not entry point) with dual power supplies and redundant disks.

Alternatively, you can wait 7 years and buy spare parts then. Unless things change dramatically, it will be easy then to find parts for a 7 year old server, and, if used, cheap.


👤 aziaziazi
Think of it this way: How will devices in 20 years try to interact with my server?

👤 abudabi123
Start from the blueprints for mechanical computers designed to last on extreme environment such as the surface of Venus and have people at the Longnow Foundation operate it? The computer could charge up and function every now and then when it rains or the sunshines or the wind blows or the nuclear power source burns. Biochemistry has a builtin vm for knitting patterns from DNA, RNA. Use crystal structures for read-only foundational memory packaged like child's play Beyblades?

👤 chris_armstrong
Surely this is a "Ship of Theseus" type of problem i.e. to achieve this longevity you have to continue maintaining it until it is no longer (philosophically) the server you began with.

Keep its software and configuration practices up to date, upgrade and replace components. Servers that have lasted 10-15 years have rarely done so with at least some maintenance, and the less performed, the accumulated legacy of being out of date is more likely to sink it completely.


👤 2rsf
I'm surprised that nobody asked- what for? what is the purpose of this server and why should it last for 20+ years?

👤 ratsmack
It seems the technology changes so fast that after two years most hardware is considered obsolete.

👤 dontbenebby
Too late.