Speaker: Neil Hartner, Senior Architect at Overstock.com
I’m Neil Hartner and I’m the Senior Architect at Overstock.com. I work with the development staff to determine the architecture and improve the performance of our web site so it’s as fast as possible.
Overstock.com has millions of customers; we do over a billion dollars in revenue a year. Our customers expect fast response times, and we work hard to ensure that we’re the fastest retail site on the Internet.
Some of the challenges we face at Overstock.com are being able to deploy our web site rapidly—we like to deploy every two weeks—and we also like our site to be responsive and fast.
Before we got AppDynamics, when we had performance problems we were looking at log files and code profilers. Now there’s problems with only using log files: if we weren’t logging the right things, we couldn’t find the problem. Log files also don’t scale well when you have thousands or millions of log messages coming through--and you also don’t have the context you need to figure out: “This log message, what request did it belong to?”
Once we decided we wanted an APM solution, we came up with some success criteria. It needed to be fast, it had to have low overhead, and it had be “Always-On” so that it could be running production or our staging environment—wherever we wanted to deploy it. It needed to provide the context we needed so we could have fast root cause analysis, and it needed to be usable by both developers and by operations staff. So quickly we whittled it down to a handful of vendors. Some of them were too expensive so we threw them out.
What we found with AppDynamics is that we were up and running much faster. We found that the Operations team had a much easier time using the tool; it was much more intuitive. We also found that the overhead was slightly less, which we liked.
One of the benefits of AppDynamics is that when we’ve had a problem, the root cause analysis time has in some cases gone from days or hours down to minutes.
I’d recommend AppDynamics to anyone running a public web site where you need to know what’s happening. You want to know real time how things are performing—and when there are problems, you need to figure out where the problems are.
I think it’s a great tool for both development and operations. For the Ops team, there are great dashboards to show you real-time how the system is performing. For developers, AppDynamics is a great way to find performance problems.
I myself am a developer by background, and I find that AppDynamics has everything I look for. I can look at call stacks to see exactly what code is being executed, I can see SQL calls so I can see queries that are being run and how long they’re taking to execute, and I can see web services that are being called.
The bottom line: I quickly find where in the system the latency is occurring.