<< October 2008 | Home | December 2008 >>

Real World Browser Performance

Chrome three times faster than Firefox and six times faster than IE6

We are currently building a web application for the financial services sector that is highly depending on client side JavaScript and DOM manipulation. Each time the user changes an input parameter the following steps are executed:

  • the data is collected from the user interface,
  • sent to the server,
  • processed there,
  • sent back to the browser
  • where the user interface is finally updated with the results.

The application is based on DWR for Ajax communication, Drools as a rule engine running on the server and some custom Java code. Server side execution is rather fast, in the range of 100-200ms. On the client side things are different. Collecting the data is quite fast, too, below 100ms in every browser. Updating the UI is where most of the time is spent.

The user interface contains a bunch of tables to show the results. Rows are created and removed dynamically depending on the returned data and populated with the corresponding properties. This is done using jQuery for heavy DOM manipulation.

The current version of the tool has been tested with different browsers showing some significant differences:

BrowserTime (ms)
MSIE 6.03281
Firefox 3.0.4 (Linux)1492
Firefox 3.0.4 (Windows)1357
Safari 535.20 (Mac)632
Google Chrome Beta 2515

These are just the numbers from our current development version (IE 6 matches the production environment, that's why we didn't test with IE 7 or IE 8 beta).

What is interesting is that Google Chrome with the WebKit HTML and V8 JavaScript engine outperforms Firefox by a factor of three and IE 6 by a factor of six. As Safari is also quite fast this seems to result mostly from the WebKit rendering engine.

IntelliJ IDEA 8.0

JetBrains has released IDEA 8.0

JetBrains has released IDEA 8.0. It has support for a few new frameworks like JBoss Seam, Struts 2, GWT 1.5, RESTful webservices and updated support for Spring like Spring 2.5, Spring Webflow, Spring MVC and Spring Dynamic Modules. Templates languages like FreeMarker and Velocity are now supported as well as improved support for XPath and XSLT.
In version 7.0 JetBrains introduced support for Maven which has been further enhanced in 8.0:

  • Creating new projects from Maven archetypes.
  • Resource filtering with built-in Make.
  • Manually added libraries and modules dependencies support.
  • Completion of artifacts' groupId, artifactId, version, exclusions, based on downloadable repository indices.
  • Code completion for plugin configuration.
  • Parent and dependencies generation in pom files with Alt+Insert.
  • Add Maven Dependency Quick Fix for unresolved classes in java code.
  • Support for Web Overlays.

This makes IDEA 8 the best choise for the development of mavenized projects.

Additionally the built-in Subversion connector has been updated for Subversion 1.5 and has support for merge-tracking.

References

Tags :

Openfire Server Multiple Vulnerabilities

Six months without action by the vendor?

Andreas Kurtz has published a security advisory regarding multiple critical security vulnerabilities in Openfire's admin console. There is also a posting to full-disclosure.
The issues allow a remote attacker to circumvent authentication and run arbitray code with the permissions of the user running Openfire. It affacts all versions up to and including 3.6.0a.

Andreas claims to have notified the vendor Jive Software six months ago. Up to now no security advisory has been issued by Jive and no patch has been published. I am really interested to hear Jive's version of this story. If it is true that Jive was aware of the issues for so long and no action has been taken to inform the community or to fix the problem this will probably result in a loss of trust in Openfire's development model.

For now the only solution is to limit access to the admin console by firewall rules. With regard to security issues in the admin console in the past this is recommended anyway. The XMPP interface is not accected by the vulnerabilities discovered by Andreas.

Update 2008-11-14

Openfire 3.6.1 has been released that fixes the security issues.

References