En Fr
Web/database development and more...

A somewhat geeky dev blog

This is where I allow myself to geek out on development, technology, the Internet, databases, open-source, weblogs and presumably some other geeky stuff too... :P

Pages: 1 2 3 4 5 6 7 8 9 10 11 ... 14 >>

01/20/10

English (US) How to autoplay movies in QuickTime X

Permalink 01:58:00 am, by Francois Planque Email , Categories: Mac stuff

Apple has removed that features in Snow Leopard and QuickTime X has no preferences panel to enable this. So you need to go through the command line to get it back…

In Terminal, copy/paste:

defaults write com.apple.QuickTimePlayerX MGPlayMovieOnOpen 1

Now movies will autploay when you double click them.

English (US) How to enable X-Ray folder previews in Mac OS Quick Look

Permalink 01:56:00 am, by Francois Planque Email , Categories: Mac stuff

In Terminal copy/paste this:

defaults write com.apple.finder QLEnableXRayFolders 1

Then relaunch the Finder. Press space on a selected folder and admire :)

12/03/09

English (US) Why echo is slow in PHP and how to make it really fast

Permalink 06:40:00 am, by Francois Planque Email , Categories: PHP, Web Dev, Linux stuff

You may have noticed that PHP scripts that echo a lot of content appear to be running with poor performance…

Well, the operative word here is “appear". It is a common misconception that “echo is the slowest PHP command"! :p

The problem is actually just a bandwidth issue! When you try to pump a lot of content though the Internet, at some point you experience “load time"… and at some point PHP actually experiences “send time"!

You may measure the execution time between the begining and the end of your script, and, on a slow connection, it may show you that it took 500 ms to execute. You may even narrow it down to a single echo statement that takes 480 ms to execute. But that time actually includes wait time where PHP cannot send any more data back to apache!

There is a common trick that consists of starting output befering before echoing, like this:

PHP:

ob_start(); 
echo $a_lot_of_content;

This will allow PHP to move on and appear to terminate fast. But the truth is, all the content is now in PHP’s output buffer, and although your script is done, PHP is still working in the background to send all that data to your web server (apache for instance).

Read more »

English (US) How to log request processing times in Apache

Permalink 03:33:00 am, by Francois Planque Email , Categories: Web Dev, Linux stuff

If you have an apache (2) web server, you probably have an access.log file showing you all kinds of data using the “combined” log format. Let’s see how to include processing time into that log file.

By default a line in the combined log looks like this:

Code:

10.0.209.80 - - [03/Dec/2009:03:20:47 +0100] "GET /info-tech/ HTTP/1.1" 200 46482 "http://fplanque.com/info-tech/" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5"

Notice the 2 dashes - - just after the IP. The first one stands for “I could not identify the user using ident” and the second one for “no user authentication was performed".

Now, let’s face it: you will never identify anyone using ident. Your apache conf probably even doesn’t try. That field is a left over from ancient times. So let’s replace that first dash with something useful, i-e: the processing time of the request! Note that by doing this we keep the global structure of the file identical and any log processing tool you might be using should not be affected.

Read more »

11/29/09

English (US) How to install the APC PHP Cache on Debian (Lenny)

Permalink 01:50:50 am, by Francois Planque Email , Categories: PHP, Linux stuff
APC PHP Cache Control Panel
The APC PHP Cache Control Panel

The APC cache can significantly improve your PHP script performance, just by installing it, which basically takes 5 minutes! (Plus, it’s actually supported by the core PHP developers and will probably be integrated into PHP6…)

Here’s what I did on my Debian Lenny box…

First you may want to have a reference benchmark to see if it actually improves:

Code:

ab -c5 -n100 http://www.yoursite.com/yourscript.php

Now install the APC package:

Code:

aptitude install php-apc

Now, restart apache:

Code:

/etc/init.d/apache2 restart

Now, you can run your benchmark again and see the difference! Tada! :)

Read more »

Pages: 1 2 3 4 5 6 7 8 9 10 11 ... 14 >>