Smarter Web Application Performance Monitoring

TR Jordan

Subscribe to TR Jordan: eMailAlertsEmail Alerts
Get TR Jordan via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Top Stories by TR Jordan

Here at AppNeta, we get to see a lot about how people build their web applications. From simple PHP scripts to heavily service-oriented Java clouds to monolithic Django apps, everybody’s product is architected a little differently. We’re still out to trace everything, and today I want to talk how to get visibility into an important component of any complex system: the messaging queue. Specifically, let’s look at how to trace a job from Rails using Resque. Messaging Queues If you haven’t used a messaging queue in your app, the idea is simple. Instead of forcing all the work to happen during the request, while the user is waiting, you can delay some of the more time-consuming tasks. You can do anything in these tasks, ranging from a simple insert to kicking off a series of user analytics that touch all parts of your infrastructure. The advantage is that you can retur... (more)

Profiling Python Performance Using lineprof, statprof, and cProfile

If you’re a regular here, you know how much we care about the full-stack view of applications. Today, let’s zoom in a bit, and talk about the performance of a single layer. In particular, let’s look at profiling in Python. As an example, let’s take this bit of code for calculating confidence intervals of the mean of a set of data. If you’re not familiar with confidence intervals, they provide a set of bounds for a given statistic; a 95% interval implies that the true mean lies in the calculated range 95% of the time. One way of calculating this involves generating a number of ne... (more)

Let’s Talk About Your Performance

Do you know how long your customers are going to wait for a page load? More importantly, how long are you making them wait right now? Back in the misty eons of time, it used to be easy to measure the performance of your application. You’d grab a stopwatch, load up your web application, and see what happened. If it was slow, you’d look at the mess of PHP, HTML and CSS you crammed into index.php and make sure that you weren’t using bubble sort anywhere. In these modern times, you typically take a few more extra steps: Add Varnish to cache any generated content Split your MySQL Inno... (more)

TraceView Data API

I’m excited to announce a new feature to TraceView – the Data API! In a nutshell, the Data API exposes all of those high-level metrics you’re collecting in TraceView over REST, formatted as JSON. Now you can take that data, jam it into your own system and do whatever you need to make sure everybody in your organization sees what they need, when they need it. We’ve also wrapped our configuration API into the same place, so you can interact with all our services in one place. If you’re itching to get to it, head on over to the docs. If you’re still not convinced, read on! Let’s tak... (more)

Headnet Improves Drupal Performance and Reliability with TraceView

Headnet is a web consultancy firm based in Copenhagen, Demark. Headnet develops and hosts web applications, mainly for government clients, as well as private organizations and NGOs. The company utilizes a broad range of technologies to create custom sites, from CMS-based sites with Drupal and Plone to custom applications in Java and Python. As a one-stop shop for web apps, Headnet is entirely responsible for the creation, modification and upkeep of sites for its customers. The Challenge Until November 2012, Headnet relied on “old-school” monitoring tools, such as open-source inf... (more)