Performance Improvements

In our previous post, we discussed how we were planning to make some changes to address some of our recent performance issues. Since that post, we have been working hard to speed up Unfuddle and decrease load times. You can see below for some highlights of what we have done so far.

Infrastructure

We have moved all Unfuddle accounts to more powerful and capable servers. We previously used a fleet of Amazon’s m1.large instances but we have migrated to m1.xlarge instances. This means significantly increased memory and CPU. This has already greatly reduced some of our more common server-related issues.

Caching

We used to have an embarrassingly small amount of caching (of any kind) implemented in Unfuddle. We have now gone through the entire application and begun caching at a number of different levels. This has had a direct result on page load times and API requests across all of Unfuddle.

Ticket Reports

Ticket reports have unfortunately been one of the slowest API endpoints as a result of their complexity. We have been working to reduce the time it takes to generate a ticket report and to display it in your browser once it has been generated. We are also caching report data where feasible to further reduce the load times.

Results

We were careful to measure our average response times before making any changes so that we would have empirical data telling us if we were going in the right direction. Here are the results for select API endpoints:

Unfuddle API Endpoint Load Time Averages Chart

As you can see, on average, most requests are taking about 33% of the time. That’s a huge improvement!

And we are not done...

While the improvements listed above have made a difference, we are not done yet. Over the next few weeks we are going to continue our optimization efforts. We will be working to improve the speed of Subversion and Git repository access as well as further optimizing ticket reports.

After that, keep an eye out for some changes to the Unfuddle interface. We are going to be implementing some things that we think you will find pretty helpful...

  1. November 16, 2012 Joshua Stewardson

    That's excellent! Since most of my day is spent on Unfuddle, a speed improvement of that size means I get more done faster and more time with my family - thanks, guys!

  2. November 16, 2012 Zach

    Thank you. We use your service all day and I've noticed the speed increases.

  3. November 17, 2012 Alejandro

    We've been using Unfuddle for years and this has been an AWESOME improvement. Moving from ticket to ticket takes half a second as opposed to the 2-3 seconds that it was taking before. This has made a huge impact on our team since all of us use Unfuddle day in, day out pretty much every day!!!

    Keep up the good work!

  4. November 18, 2012 Christoph

    Great improvement! I notice the speed already. We are generally very satisfied with Unfuddle because the tool is so easy and not too feature bloated. Thus the small improvements really make a difference for us. Speed is such a small thing which you don't see on the surface, but it makes you feel more comfortable as you are using the service because everything is just faster and I get more stuff done.

    Thanks! :)
    Christoph

  5. November 18, 2012 sebas

    you guys rule! thanks for your app

  6. November 19, 2012 Bob Lail

    Good work! Thanks!

  7. November 19, 2012 Martin

    Great. I always wanted some hand on the css of my projects, e.g. include a clients logo in the header. Will that be possible?

  8. November 20, 2012 Tony

    Hi there,

    I'm really happy to see stuff happening. Here are some documentation / rst requests.

    I want `rst` support for documentation / notebooks.

    Possibly, the ability to have a repository be pointed to a git branch or a /docs directory where rst or sphinx output is at.

    I want to be able to autosave / save on page for `notebook` pages.

    Perhaps highlighting for rst / etc.

    RST viewer for when viewing pages.

    I'm guessing this is a ruby shop so I may go ignored. But to be pleased, it would say a lot about the Unfuddle.

    Please update your CSS and freshen it up.

  9. December 12, 2012 Barry

    Still extremely slow, cannot wait to get on to a different provider