Simon Willison’s Weblog

Subscribe
Atom feed for performance

86 items tagged “performance”

2009

peeping into memcached. “Peep uses ptrace to freeze a running memcached server, dump the internal key metadata, and return the server to a running state”—you can then load the resulting data in to MySQL using LOAD LOCAL INFILE and analyse it using standard SQL queries.

# 20th April 2009, 6:35 pm / performance, scaling, memcached, introspection, peep, mysql, sql, evanweaver, twitter

ProjectPlan—unladen-swallow. A branch of Python 2.6 aiming to radically improve performance (the target is a 5x improvement), by compiling Python to machine code using LLVM’s JIT engine. I think this is a Google 20% time project (or maybe not, see the comments). An early version without LLVM is already available for download.

# 30th March 2009, 10:09 am / google, jit, llvm, performance, python, unladenswallow

Magic properties make Firefox synchronously load the Java plugin. Even defining a function called sun() (or several other symbols) will trigger the Java VM to be loaded, dramatically hurting the performance of your page.

# 27th February 2009, 4:03 pm / firefox, java, performance, javascript, mark-pilgrim

jQuery 1.3.1 Released. Bug fix for 1.3, mainly browser compatibility issues. Of interest: jQuery no longer ship a packed version (where JS is used to further decompress a string), as their tests show that this reduces performance due to the overhead of the extra decompression. They still provide a YUI Compressor minified version.

# 22nd January 2009, 10:41 am / minification, jquery, javascript, performance

Sloppy—the slow proxy. Java Web Start GUI application which runs a proxy to the site of your choice simulating lower connection speeds—great for testing how well your ajax holds up under poor network conditions.

# 13th January 2009, 4:17 pm / ajax, javascript, performance, sloppy, java, javawebstart, proxy, richard-dallaway

2008

simplejson 2.0.1. Python’s simplejson JSON library got a whole lot faster while I wasn’t looking.

# 1st October 2008, 10:55 pm / simplejson, json, python, performance, bobippolito

Dromaeo: JavaScript Performance Testing (via) This is one classy benchmark. Run it in as many browsers as you like (each run is saved to the server and assigned a run ID), then compare the results by appending ?id=[run1],[run2]... to the URL.

# 11th September 2008, 4:06 pm / benchmark, john-resig, dromaeo, javascript, performance

TraceMonkey. Brendan Eich has been preaching the performance benefits of tracing and JIT for JavaScript on the conference circuit for at least a year, and the results from the first effort to be merged in to Mozilla core are indeed pretty astounding.

# 22nd August 2008, 11:13 pm / john-resig, tracemonkey, javascript, mozilla, performance, brendan-eich, jit

ZeroMQ. Open source message queue optimised for performance: claims 25μsec latency and 2.6 million messages per second.

# 27th July 2008, 4:57 pm / messaging, zeromq, performance, message-queues

SquirrelFish. WebKit’s JavaScript engine was no slouch, but that hasn’t stopped them from replacing it with a brand new “register-based, direct-threaded, high-level bytecode engine, with a sliding register window calling convention”. It runs 1.6x faster and has the Best Logo Ever.

# 3rd June 2008, 7:57 am / logo, webkit, javascript, safari, squirrelfish, performance, bytecode

Yahoo!’s Latest Performance Breakthroughs. 20 new performance tips to join the previously published 14. Flushing the buffer while the backend code is still working to cause the browser to start loading CSS earlier is interesting.

# 20th March 2008, 3:17 pm / http, performance, css, yahoo

IE8 speeds things up. Steve Souders notes that IE8 downloads script files in parallel before executing them sequentially, giving it a significant speed boost over other browsers that download sequentially.

# 11th March 2008, 5:42 am / ie8, steve-souders, browsers, performance

Nginx and Memcached, a 400% boost! Ilya Grigorik wrote up my current favourite nginx trick—you set nginx to check memcached for a cache entry matching the current URL on every hit, then invalidate your cache by pushing a new cache record straight in to memcached from your application server.

# 11th February 2008, 10:05 pm / memcached, nginx, performance, caching, ilyagrigorik

"Why doesn't jQuery have an XPath CSS Selector implementation?" For now, my answer is: I don't want two selector implementations - it makes the code base significantly harder to maintain, increases the number of possible cross-browser bugs, and drastically increases the filesize of the resulting download.

John Resig

# 11th February 2008, 5:31 am / jquery, xpath, css, performance, john-resig

Announcing StaticGenerator for Django. Simple but powerful static file generator for Django applications—just tell it about your model instances and it will create an entire static site based on calling get_absolute_url() on each one. Uses signals to repopulate the cache when a model changes.

# 7th January 2008, 9:26 pm / django, performance, static, caching, orm, staticgenerator, jared-kuolt

20,000 Reasons Why Comet Scales. Greg Wilkins coaxes Jetty and Bayeux in to supporting 20,000 simultaneous users per server while maintaining sub-second latency, using Amazon EC2 to run the benchmark.

# 7th January 2008, 8:32 am / bayeux, jetty, java, comet, javascript, gregwilkins, performance, benchmarking, ec2

2007

Ruby 1.9—Right for You? Dave Thomas on the just-released Ruby 1.9. It’s a development release that breaks backwards compatibility in a few minor ways, but new features include the YARV virtual machine (hence significant speed improvements) and unicode support via associating encodings with bytestrings.

# 26th December 2007, 12:09 pm / bytestrings, dave-thomas, ruby, rubi19, yarv, performance, unicode

ErlyWeb vs. Ruby on Rails EC2 Performance Showdown. ErlyWeb’s peak response rate beats Rails by 47x, albeit with a hugely simplified benchmark. More interesting than the results is the idea of using EC2 for benchmarking on identical simulated hardware.

# 10th December 2007, 3:27 pm / amazon, ec2, virtualisation, erlang, rails, erlyweb, benchmarks, performance, yarivsadan

Yahoo! Search Contextual Precaching. Neat performance trick on Yahoo! Search: the moment you start typing (indicating you intend to search) the site quietly fires off a bunch of requests to precache assets needed for the search results page.

# 16th November 2007, 3:58 pm / performance, javascript, ajaxian, yahoo, yahoosearch

CSS Sprite Generator (via) Upload a zip file of images and get back a CSS sprite plus a set of pre-calculated background image rules. Tool built by Ed Eliot and Stuart Colville for their forthcoming book “High Performance Web Site Techniques”.

# 27th September 2007, 10:59 pm / edeliot, csssprites, css, performance, spritegenerator, stuart-colville

YSlow. New extension for Firebug (yes, an extension on top of another extension) from the Yahoo! performance team which provides improved performance measurement tools and optimisation advice.

# 25th July 2007, 4:48 am / firefox, extension, http, firebug, optimisation, performance, yahoo, yslow

Return of the HTTP overhead delay. Christian proposes a neat way of improving page performance, by delaying non-essential images such as avatars until after the rest of the page has loaded.

# 11th July 2007, 3:12 pm / christian-heilmann, performance, http, images, avatars, onload, javascript

Reducing HTTP requests using make. Nice simple recipe for concatenating JavaScript in to one file using make—doesn’t do anything for cache-busting though.

# 27th May 2007, 11:29 pm / javascript, performance, make

Rapid development serving 500,000 pages/hour (via) Curse Gaming are getting impressive performance out of Django.

# 24th May 2007, 4:11 pm / django, scaling, performance, cursegaming, curse

Content delivery system design mistakes. Collection of tips for optimising Web server performance. Mentions lighttpd/nginx, Keep-Alive, expires headers, noatime and more.

# 15th February 2007, 11 am / http, performance, lighttpd, nginx

Browser Cache Usage—Exposed! Includes real numbers for browser cache usage on some of Yahoo!’s most popular pages.

# 7th January 2007, 10:20 pm / cache, performance, yahoo