Ask HN: How often is hardware at the big tech companies refreshed?
Refresh cycles depend on 3 values -- end of warranty, end of life, and end of support.<p>If you&#x27;re end of support, you have no bug fixes, no technical support, and very limited part availability. You probably won&#x27;t be running EOS hardware anywhere in your datacenter without a very defined plan to migrate off of it quickly or it&#x27;s in a lab somewhere no one cares if it dies.<p>End of Life is when you can&#x27;t buy the hardware anymore, so you start (or have already started) with the next generation of hardware. Depending on the policy, this could be the oldest hardware you have. You&#x27;ll get the new stuff in and migrate over, and get rid of these machines most likely once they&#x27;re out of warranty. Maybe you&#x27;ll keep this hardware until EOS for low-priority work.<p>End of Warranty is the last major date, and it depends on date of purchase of a particular piece of hardware, rather than a product line. If you&#x27;re on a frequent refresh cycle, once the product costs you money to repair then you&#x27;ll get rid of it. You&#x27;ll buy a warranty that most likely matches your depreciation cycle - 4 or 5 years. If you choose to keep machines that are out of warranty they start getting downgraded to less critical roles, or are scrapped as soon as they break. Repairs are variable costs in terms of parts and labor, and that doesn&#x27;t play nicely with budgeting to manage a machine.<p>In general the harder it is to replace a single piece of equipment or the more expensive it is, the more likely you&#x27;ll be running until EOL or EOS. Fileservers and networking (especially core networking) will be kept longer than cheap web servers.<p>EOW, EOS, and EOL all vary depending on vendors and product lines. It&#x27;s the reason Dell and HP has a separate business line of desktops and laptops, because the EOL and EOS dates are known in advance, and you can standardize your equipment even when purchasing in multiple batches over 2 years. This reduces how much compatibility testing you have to perform, which is really beneficial for huge deployments.