2,073 Days of Unused Java App Uptime

2,073 days. That's the uptime on a t2.medium I found while auditing load balancers for a finops sweep. Five years, eight months, never rebooted. Running a Java app on JRE 1.8.0_25 — released October 2014, Obama's second term. I went looking because of an ALB with 150 requests in three months. Background noise. But I wanted to know what was making it. One of its target groups had exactly one registered instance. Unhealthy. Failing health checks. Nobody listening. CPU was at 27% average. Network pushing 500 MB a month in both directions. This wasn't idle infrastructure — something was burning cycles. I SSHed in and ran ss. Hundreds of concurrent connections on port 9000. Scrapers, bots, scanners hammering the TensorFlow inference endpoint directly via the public IP, bypassing the load balancer entirely. The ALB's own health checks? Failing. The thing the load balancer was trying to help was getting served by strangers instead. A Ruby 2.0 CodeDeploy agent was running alongside the Java app, polling every few seconds for a deployment that would never come. It had been waiting since 2021. $142 a month. $1,700 a year. Serving inference results to internet scrapers on a Java runtime from the Obama administration. The tools optimize what runs. They don't tell you what doesn't. A load balancer with zero requests is free signal — follow it to the instance, follow the instance to the process, follow the process to the connections. The archaeology isn't in the dashboard. It's in ss and ps aux and the 2,073-day uptime counter that nobody ever looked at. Link in first comment. #platformengineering #finops

To view or add a comment, sign in

Explore content categories