aetles + performance   16

Modern Web Development
The mobile landscape today is all but monopolized by WebKit, as a result, most of the tooling and infrastructure to support mobile web development on the frontend is taking place in the WebKit Inspector, so I’ll focus on it, and take a deep dive into its entire feature-set and how and when to use it.

Google and the Chrome team have been pumping a ton of resources into the WebKit Inspector. The changes have enabled a whole new class of complex and ambitious applications that would have otherwise collapsed on their own weight. This is great news, of course, but as I talk to more and more web developers about their process and tooling, it became clear to me that many of them haven’t caught up with the changes or aren’t making effective use of the tooling available. This blog post attempts to remedy that, not only by walking you through the inspector’s feature set, but also highlighting certain techniques for bug hunting and feature development that I’ve found to be indispensable.
javascript  performance  programming  web  tools  debugging  webkit  inspector 
4 weeks ago by Aetles
A Year with MongoDB - Engineering at Kiip
Initially, we felt MongoDB gave us the flexibility and power we needed in a database. Unfortunately, underlying architectural issues forced us to investigate other solutions rather quickly. We never attempted to horizontally scale MongoDB since our confidence in the product was hurt by the time that was offered as a solution, and because we believe horizontally scaling shouldn’t be necessary for the relatively small amount of ops per second we were sending to MongoDB.

Over the past 6 months, we’ve “scaled” MongoDB by moving data off of it.
database  nosql  performance  mongodb 
5 weeks ago by Aetles
Overcoming long Views rendering time on Drupal sites | 2bits.com, Inc. - Drupal Performance Optimization, Development, Managed Hosting, Customization and Consulting
Upon investigation, we found that one view was responsible for most of that time.

However, the query execution itself was fast, around 11 ms.

But, the views rendering time was obscenely high: 2,603.48 ms!

So, when editing the view, you would see this at the bottom:

Query build time 2.07 ms
Query execute time 11.32 ms
View render time 2,603.48 ms
Since this view was on each page, in a block on the side bar, it was causing all the pages of the site to be slow.

The underlying reason was really bad coding in the views-view--viewname.tpl.php, which is too long to explain. But the gist of it is that the view returned several thousands rows of taxonomy terms, and was was supposed to render them in a tree. However, the actual view template just looped through the dataset and did not do much and displayed static HTML in the end!

The solution for this was quite simple: enable Views caching.

To do this, go to the view's Defaults, then Basic settings, then Caching. Change to Time Based, then select at least 1 hour for each of Query results and Rendered output.

Save the view, and you will see a positive impact on performance of your pages.
drupal  views  performance  caching 
12 weeks ago by Aetles
Get Rid of the Performance Review! - WSJ.com
You can call me "dense," you can call me "iconoclastic," but I see nothing constructive about an annual pay and performance review. It's a mainstream practice that has baffled me for years.

To my way of thinking, a one-side-accountable, boss-administered review is little more than a dysfunctional pretense. It's a negative to corporate performance, an obstacle to straight-talk relationships, and a prime cause of low morale at work. Even the mere knowledge that such an event will take place damages daily communications and teamwork.
management  performance  productivity  work 
february 2012 by Aetles
Mobile Performance Manifesto | David Calhoun's Developer Blog
Earlier this year I gave a talk (slides) outlining the latest and greatest in mobile performance, including a bit of my own unscientific research into carrier latency and bandwidth thanks to boomerang.js.
I realized that interest in mobile performance has exploded recently, especially with Steve Souders announcing his focus on mobile, and I thought it was time for an update, this time in blog form. Also, my old slides have been somewhat embarrassing. For some strange reason, at the time I wanted to give S5 a try – that outdated, ancient, not-performant slideshow framework. The result is a slideshow on performance that loads slowly… doh! (incidentally, I recommend deck.js as an alternative).
In any case, it was time for a roundup of mobile performance best practices, in blog form. I’m not sure if it’s properly called a manifesto, but it is what it is! Onward!
css  javascript  mobile  performance  webdesign 
december 2011 by Aetles
Performance & Security for Any Website | CloudFlare | Knowledge Base
first of all: CloudFlare really excels with Drupal based web sites! After a bit of trial and error, we've by now figure out some optimal performance gainers fiddling around with both Drupal and CloudFlare settings and we would like to share these insights with you guys!
drupal  cloudflare  performance 
may 2011 by Aetles
Configuring Varnish for High-Availability with Multiple Web Servers | Lullabot
Varnish is an amazing and incredibly efficient tool for serving up common resources from your site to end-users. Besides simply making your site faster, it also can add additional redundancy to your setup by acting as a full backup if the web servers fail. In order to make Varnish both serve as an effective backup and efficient caching layer, it needs to clean up incoming headers from the browser, strip down cookies, and consolidate the "Accept-Encoding" header.
After such extensive explanations it's easy to get overwhelmed, but the good news is that the VCL file provided here can quickly be deployed to almost any Drupal site and start working immediately. For most sites no further customization is needed, and sites that need to tweak it will have a good head start towards huge reductions in server load. On our sites, Varnish is usually able to handle about 85% of the traffic without ever touching the web servers. Even during peak times with hundreds of thousands of requests coming in per hour, Varnish can hum along at less than 5% CPU usage of an average 4-core server. Instead of scaling out your web servers horizontally, adding a few Varnish machines in front of them can save a huge amount of processing and speed up your site at the same time.
If you haven't already, grab the actual default.vcl file that we use on our sites and read it through start to finish. Now with all of the individual pieces explained in-depth above, we hope you can use it as a starting point for your own VCL configuration. Happy caching!
apache  drupal  performance  server  varnish  from instapaper
april 2011 by Aetles
Anatomy of a Crushing (Pinboard Blog)
A number of people asked about the technical aspects of the great Delicious exodus of 2010, and I've finally had some time to write it up. Note that times on all the graphs are UTC.

On December 16th Yahoo held an all-hands meeting to rally the troops after a big round of layoffs. Around 11 AM someone at this meeting showed a slide with a couple of Yahoo properties grouped into three categories, one of which was ominously called "sunset". The most prominent logo in the group belonged to Delicious, our main competitor. Milliseconds later, the slide was on the web, and there was an ominous thundering sound as every Delicious user in North America raced for the exit.
pinboard  performance 
march 2011 by Aetles
Drupal 7 Front-End Performance - Shared Hosting Recommendations | Midwestern Mac, LLC
I've spent a lot of time working on making sure my smaller Drupal sites (mostly run on shared hosts or very small VPSes) run lean and mean. This helps the pages load faster, users are happier, and my hosting providers don't have to shut down any of my sites, even when they're under pretty heavy load.

Here are my three recommendations for making your Drupal 7 website run great on a shared (or low-end VPS) host:
drupal  drupal7  sharedhosting  performance 
february 2011 by Aetles
Death match! EBS versus SSD price, performance, and QoS - MySQL Performance Blog
Is it a good idea to deploy your database into the cloud? It depends. I have seen it work well many times, and cause trouble at other times. In this blog post I want to examine cloud-based I/O. I/O matters a lot when a) the database’s working set is bigger than the server’s memory, or b) the workload is write-heavy. If this is the case, how expensive is it to get good performance, relative to what you get with physical hardware? Specifically, how does it compare to commodity solid-state drives? Let’s put them in the ring and let them duke it out.
I could do benchmarks, but that would not be interesting — we already know that benchmarks are unrealistic, and we know that SSDs would win. I’d rather look at real systems and see how they behave. Are the theoretical advantages of SSDs really a big advantage in practice? I will show the performance of two real customer systems running web applications.
ec2  performance  ssd  aws  database  hosting 
february 2011 by Aetles
Convert your MySQL database from MyISAM to InnoDB, and get ready for Drupal 7 at the same time | Drupal Services and Consulting
If you haven't already heard, Drupal 7 will default to using the InnoDB storage engine instead of MyISAM for MySQL (though a MyISAM database will continue to work just fine in Drupal 7). This is fairly substantial change within Drupal core, and as the thread in the issue queue I linked to shows, there were a lot of questions and apprehension about it. However...

...we are going to just skip over a lot of that apprehension and get down to point of this article - there's no good reason not to hop right into using InnoDB today on your Drupal 5 or Drupal 6 site. The rewards are; a possibly significant improvement in performance, a definite improvement in scalability (most highly trafficked Drupal sites have been using InnoDB for some time now because of this), and you'll start getting used to working with what will be more and more common in your Drupal-life, InnoDB.
drupal  performance  mysql 
january 2011 by Aetles
Drupal performance - the next step | Tag1 Consulting, Inc.
The result is obviously, that Hiphop has by far the most advantage over a "normal", e.g. PHP+APC Drupal, install, a whopping 30%. Also, the gains from the PHP extension in any case are rather minor (2-3%).

An additional result is that sadly Drupal 7 is much slower (60%), at least for this page.
drupal  performance 
december 2010 by Aetles
Ben Strong's Blog: Google and Microsoft Cheat on Slow-Start. Should You?
I decided a couple of weeks ago that I wanted to build an app, most likely a web app. Being a premature optimizer by nature, my first order of business (after deciding I need to learn to draw) was to find the absolute fastest way to serve up a web page. The Google home page is the fastest-loading page I know of, so I thought a good place to start would be to figure out how they do it and then replicate their strategy.

The full story of my search is below, but the short version is that to match Google's page load times you have to cheat on the tcp slow-start algorithm. It appears that stretching the parameters a little bit is fairly common, but Google and Microsoft push it a lot further than most. This may well be common knowledge in web development circles, but it was news to me.
google  http  performance  speed  tcpip 
december 2010 by Aetles
Optimizing Drupal: From Baseline Drupal to the Pantheon Drupal Platform | Load Testing Blog
We were pleased to demonstrate the ease with which we were able to use Web Performance Load Tester to collect performance metrics on various Drupal configurations.

Some of the gains we demonstrated represented fairly low-hanging fruit.  Installing a PHP accelerator like APC is a no-brainer on almost any production platform and can nearly triple the capacity of a heavily-trafficked web site.  Caching is also very easy to enable.

On the other hand, the Pantheon Drupal Platform outperformed our expectations with better than an order of magnitude improvement in user capacity.  Pantheon represents many long hours of tweaking and optimization by Drupal experts, but  in the end Pantheon was extremely easy to use and compatible with the vanilla Drupal database schema.
drupal  performance 
september 2010 by Aetles
First step at scaling mid level site? | groups.drupal.org
This question is probably a bit on the beginner end for this group but you've all probably been in my shoes previously so hopefully you'll be able to help me out.

I have a site with 6,000 nodes and 15,000 users. I make liberal use of Views, CCK and Taxonomy on all my pages and I use normal drupal caching and views caching. I run this site on a single VPS however my CPU usage lately has been a bit high (10% on a regular basis) and I need to figure out what my next step is to scale so as not to get on the bad side of my host.

Given modest financial investment (this is a niche site and thus doesn't generate much revenue at all) - what do you think the best way to reduce my CPU load / scale my site will be?
drupal  performance 
march 2010 by Aetles

Copy this bookmark:



description:


tags: