Author Archive

Own a MacBook Pro? Don’t use Google Chrome!

Monday, August 9th, 2010 by Stephan Maihöfer

It’s not really work related, but looking around in the office I see a lot of co-workers using a MacBook. And since we are doing webdevelopment I guess these same co-workers could/should be interested in browser-interoperability and maybe they got stuck with Google Chrome as their default browser. So here is the catch:

My MacBook constantly ran at very high temperatures, most of the time it ran the fan for cooling. Searching the internet everyone seemed to say “it’s normal” but noone said that for temperatures constantly above 80°C. So I went out to find the root cause of this and found that a bug causes Chrome to writes something like 20 lines to system.log _per pageload_. This led to my system.log silently growing to about 40 GB and spotlight indexing the hell out of it while I was browsing the web…hence the heat. Here are the bugs:

  • http://code.google.com/p/chromium/issues/detail?id=43786
  • http://code.google.com/p/chromium/issues/detail?id=26621

So what is the fix? Using Safari instead of Chrome dropped the temperature on my MacBook by about 30°C to a smooth 50°C. There you go: Don’t use Google Chrome!

 

Starting erlang appmon from a Windows Client

Friday, March 19th, 2010 by Stephan Maihöfer
  • first of all download and install erlang for windows.
  • start erlang like this:
    C:\Programme\erl5.7.5\bin\werl.exe -name myself@mypc -setcookie 1217983712938DKAJSHD
  • make sure to set the correct cookie for the cluster you want to connect to.
  • in the erlang shell we announce ourselves to the cluster we want to connect to like this:
    net_adm:ping(list_to_atom("ejabberd@yourdomain.org")).
  • check if this worked by listing the nodes:
    nodes().
  • Now you can start appmon:
    appmon:start().
  • In the Nodes Tab choose which node you want to get an insight view.

XMPP-BOSH and JMeter

Friday, March 19th, 2010 by Stephan Maihöfer

We recently had to stresstest our infrastructure to find some bottlenecks and general misconfiguration as well as ejabberd weirdness. Since it generally is not the best idea to “test live” I hacked up a little test-plan for Apaches JMeter, a tool for load testing of Webservers/-sites. I thought this would be a nice way to test the performance of your XMPP-BOSH infrastructure.

The plan has two authentication schemes, the first one being plain XMPP over BOSH, the second one is using “HTTP prebinding” to get the session id, request-id and JID. It has some very basic tasks like fetching the roster, sending presence, idling, joining MUC-Rooms and writing messages which it calls randomly in each thread iteration. The idea is to mimic a “normal” XMPP session in a somewhat automated way.

You may have to tweak it to your needs but in general most of the stuff that you would need to adjust is in the “User Defined Variables”, so check there first.

If you write your own tasks or plans it would be nice to hear back from improvements to this little hack.

Feel free to use it for whatever you can use it for:

JMeter Test Plan for XMPP over BOSH