FREE THOUGHT · FREE SOFTWARE · FREE WORLD

Google: Let’s Make the Web Faster

To find out what Googlers think about making the web faster, see the video below. If you have ideas on how to speed up the web, please share them with the rest of the community. Let's all work together to make the web faster!

Official Google Blog: Let's make the web faster

From building data centers in different parts of the world to designing highly efficient user interfaces, we at Google always strive to make our services faster. We focus on speed as a key requirement in product and infrastructure development, because our research indicates that people prefer faster, more responsive apps. Over the years, through continuous experimentation, we've identified some performance best practices that we'd like to share with the web community on code.google.com/speed, a new site for web developers, with tutorials, tips and performance tools.


And if you need to minify your CSS, my online CSS Minify tool works well, and is one of the only css compression engines that utilizes the W3 CSS Validator: Jigsaw programming.

We are excited to discuss what we've learned about web performance with the Internet community. However, to optimize the speed of web applications and make browsing the web as fast as turning the pages of a magazine, we need to work together as a community, to tackle some larger challenges that keep the web slow and prevent it from delivering its full potential:

  • Many protocols that power the Internet and the web were developed when broadband and rich interactive web apps were in their infancy. Networks have become much faster in the past 20 years, and by collaborating to update protocols such as HTML and TCP/IP we can create a better web experience for everyone. A great example of the community working together is HTML5. With HTML5 features such as AppCache, developers are now able to write JavaScript-heavy web apps that run instantly and work and feel like desktop applications.
  • In the last decade, we have seen close to a 100x improvement in JavaScript speed. Browser developers and the communities around them need to maintain this recent focus on performance improvement in order for the browser to become the platform of choice for more feature-rich and computationally-complex applications.
  • Many websites can become faster with little effort, and collective attention to performance can speed up the entire web. Tools such as Yahoo!'s YSlow and our own recently launched Page Speed help web developers create faster, more responsive web apps. As a community, we need to invest further in developing a new generation of tools for performance measurement, diagnostics, and optimization that work at the click of a button.
  • While there are now more than 400 million broadband subscribers worldwide, broadband penetration is still relatively low in many areas of the world. Steps have been taken to bring the benefits of broadband to more people, such as the FCC's decision to open up the white spaces spectrum, for which the Internet community, including Google, was a strong champion. Bringing the benefits of cheap reliable broadband access around the world should be one of the primary goals of our industry.

- Here are the Google instructions for Configuring your network settings to use Google Public DNS

Introducing Google Public DNS: A new DNS resolver from Google

Thursday, December 03, 2009

Today, as part of our efforts to make the web faster, we are announcing Google Public DNS, a new experimental public DNS resolver.

The DNS protocol is an important part of the web's infrastructure, serving as the Internet's "phone book". Every time you visit a website, your computer performs a DNS lookup. Complex pages often require multiple DNS lookups before they complete loading. As a result, the average Internet user performs hundreds of DNS lookups each day, that collectively can slow down his or her browsing experience.

We believe that a faster DNS infrastructure could significantly improve the browsing experience for all web users. To enhance DNS speed but to also improve security and validity of results, Google Public DNS is trying a few different approaches that we are sharing with the broader web community through our documentation:

  • Speed: Resolver-side cache misses are one of the primary contributors to sluggish DNS responses. Clever caching techniques can help increase the speed of these responses. Google Public DNS implements prefetching: before the TTL on a record expires, we refresh the record continuously, asychronously and independently of user requests for a large number of popular domains. This allows Google Public DNS to serve many DNS requests in the round trip time it takes a packet to travel to our servers and back.

  • Security: DNS is vulnerable to spoofing attacks that can poison the cache of a nameserver and can route all its users to a malicious website. Until new protocols like DNSSEC get widely adopted, resolvers need to take additional measures to keep their caches secure. Google Public DNS makes it more difficult for attackers to spoof valid responses by randomizing the case of query names and including additional data in its DNS messages.

  • Validity: Google Public DNS complies with the DNS standards and gives the user the exact response his or her computer expects without performing any blocking, filtering, or redirection that may hamper a user's browsing experience.

We hope that you will help us test these improvements by using the Google Public DNS service today, from wherever you are in the world. We plan to share what we learn from this experimental rollout of Google Public DNS with the broader web community and other DNS providers, to improve the browsing experience for Internet users globally.

Explore Google's New Speed Info

Tools and downloads From Google

There are many variables that affect a site's performance. The tools listed below can help you discover those variables and improve your site. We recommend that you experiment with these tools. Multiple simple changes can improve the experience for your users around the world by several seconds.

Web page analysis

  • Page Speed - Open source Firefox/Firebug Add-on that evaluates the performance of web pages and gives suggestions for improvement.
  • Chrome Developer Tools - Tools included in Google Chrome that let you edit, debug, and monitor CSS, HTML, and JavaScript live in any web page. You can also use them to optimize web page performance by profiling CPU and memory usage.

Resource Optimization

Development tools

  • Closure Tools - Use the Closure Compiler, Closure Library, and Closure Templates to build rich web applications with JavaScript that is faster, more powerful, and more optimized.

From other developers

Development

  • Cuzillion - Tool for quickly constructing web pages to see how components interact and how behavior differs across browsers, sometimes in unexpected ways. Also lets you share sample pages with others.
  • Hammerhead - Firebug Add-on for measuring the load time of web pages.
  • OOCSS - Development environment and framework for creating fast, reusable CSS objects and modules.

Performance benchmarking

  • httperf - Tool for generating HTTP workloads and measuring web server performance, and constructing micro- and macro-level benchmarks.
  • mon.itor.us - Provides a personalized Ajax dashboard interface, checks server performance and availability, generates uptime reports, tracks visitors, checks CPU, memory and other systems resources, and alerts when it detects abnormalities.
  • Pylot - Open source tool for testing the performance and scalability of web services. It runs HTTP load tests, verifies server responses, and produces reports with metrics.
  • Wbox - Performs various tests, including page load benchmarking, web server and web application stress testing, and verifies correct configuration of virtual domains configuration, redirects, and HTTP compression.

JavaScript profiling

PHP profiling

  • Xdebug - Extension for PHP that provides profiling and code coverage analysis, as well as debugging information including stack and function traces, and memory allocation.
  • XHProf by Facebook - Instrumentation-based hierarchical profiler for PHP.

Resource optimization

  • CSS Sprite Generator - Generates a CSS sprite out of a number of images.
  • JSLint - Tool that looks for code quality problems in JavaScript programs.
  • JSMin - Filter which removes comments and unnecessary whitespace from JavaScript files.
  • Smush It - Online tool that allows you to upload images for lossless compression and optimization. Provides a report of bytes saved and downloads a zip file containing the optimized versions of the files.
  • SpriteMe! - Tool that determines background images to sprite, groups and sprites them, and generates resultant modified CSS.
  • YUI Compressor - JavaScript minifier designed to yield a higher compression ratio than other tools.

Web debugging

  • Fiddler 2 - Web debugging proxy which logs all HTTP/S traffic between your computer and the Internet. Inspect HTTP/S traffic, set breakpoints, and "fiddle" with incoming or outgoing data.
  • Firebug - Firefox Add-on that lets you edit, debug, and monitor CSS, HTML, and JavaScript live in any web page.
  • HttpWatch - HTTP viewer and debugger integrated with IE and Firefox to provide HTTP/S monitoring without leaving the browser window.

Web page analysis

  • AOL Page Test - Open source tool for measuring and analyzing web page performance using Internet Explorer.
  • BrowserMob - Tool for website performance monitoring and alerting.
  • IBM Page Detailer - Graphical tool that assesses web page performance and provides details include the timing, size, and identity of each item in a page.
  • IntroSpectrum - Web-based performance monitor which simulates users using actual web browsers.
  • Microsoft VRTA - Tool that visualizes web page download, identifies areas for performance improvements, and recommends solutions.
  • MySpace Performance Tracker - Internet Explorer browser plugin that helps improve web page performance by capturing and measuring possible bottlenecks.
  • WebPagetest - Tool that provides a waterfall of your page load performance as well as a comparison against an optimization checklist.
  • Yahoo! YSlow - Firefox/Firebug Add-on that analyzes web pages and suggests ways to improve their performance, based on a set of rules for high performance web pages.

Google DNS Google Google Public DNS performance tools web performance

 

 

Comments