Quicksearch
Calendar
|
Sunday, December 19. 2010
Domain Location Statistics Posted by Ilia Alshanetsky
in PHP, Stuff at
16:51
Comments (9) Trackback (1) Domain Location Statistics
I recently re-started the process or aggregating PHP usage data and first sample of small dataset (about 10 million domains) has been the subject of my PHP Advent article. Now, I've started the process of collecting the data on the full data set which comprises of 124 million domains that represent the entirety of .com, .net, .biz, .info, .us, .sk and .org TLDs.
The first step of the process has been resolving all of these domains, which is now complete. The next step is fetching the server information, which began, but will take some time to finish. However, even from the domain revolving data there is a lot of useful data to be gleamed, which is what I am now publishing. My first focus was on the world-wide distribution on these TLDs, which at least for me held a few surprises. First of all, unsurprisingly US has the most domains hosted on its soil, however its sheer overwhelming of other countries is quite impressive, and stands at just over 89 million domains, 71% of all domains!. In 2nd place is Germany (which was actually a surprise, my guess that it would be Canada or Japan) with 7.5 million domains and the bronze goes to United Kingdom with 3 million domains. Canada was actually 4th with 2.7 million domains and Japan all the way in 9th place with 1.86 million domains. Below is a graph representing the top 50 Countries according to the domain distribution. To see more detail, click on the image which will bring up a zoomable HighChart graph. Note that the US excluded, due to the high number of domains it made the graph not usable and unfortunately HighCharts library does not supposer logarithmic scale. What I did instead is a create a separate chart, which breaks down the domain distribution by US states, which can be found further in the article. As you can tell from the World chart, the domain distribution is highly un-even, the top entry starts with Germany at 7.5 million and by the time hit Spain at #12, we are down to 1 million domains. By the time we get to Bulgaria that is in 37th place were are down to just 100k domains. By the time last entry in our chart appears, which happens to be Panama, we are down to a mere 21,709 domains. As with the world data, US domain distribution also had a surprise in store for me. I would've guessed that the majority of domains would find their home in California, being itself the home of Silicon Valley. However, California actually came in second, behind Arizona of all states. Arizona is home to 26.7 million domains, while California can only lay claim to 24,.3 million, Texas came in 3rd with a mere 9.99 million domains. Below is the chart showing all the states, click on the image which will bring up a zoomable HighChart graph. As with the world stats, the US domain distribution is also extremely uneven, only 12 states can lay claim to being home to over a million domains. The 12th being state, being New York with 1.56 million domains. By the the time we reach Indiana at #27, we are down to just 100k domains. Alaska trails the list at a mere 4729 domains, which seems tiny, however it still more more then 130 countries, which on a world scale would place at at #71, ahead of Iceland an Saudi Arabia, that both have just over 4100 domains. I've also created a clickable world-map that will let you explore all 222 countries, US and Canada are clickable and will give you breakdown of the individual states/provinces. While the sever information script is gathering data, which should take about 2 weeks I am hoping to generate more data based on the IPs, which should give ISP popularity, avg. # of domains per single IP with info on the "top IPs" and other curious bits of info I can gleam from free/public MaxMind I am using. P.S. If you have access to TLDs other then the ones I listed, I would be grateful if you would be willing to provide domain lists for those TLDs on a one-time or monthly basis. Thursday, November 18. 2010PHP Excel Extension 0.9
The 0.9 version of the Excel extension was released and is now available for download. This version was updated with support for LibXL 3.1.0, and introduces a number of new methods that can be used to manage repeating of printable rows, creation of named rages, and summary positioning.
GitHub: http://github.com/iliaal/php_excel/ Source: http://github.com/downloads/iliaal/php_excel/php-excel-0.9.0.tar.bz2 Wednesday, November 10. 2010
Forum PHP: APC & Memcached Slides Posted by Ilia Alshanetsky
in PHP, Talks at
10:41
Comments (0) Trackbacks (0) Forum PHP: APC & Memcached Slides
The slides from my talk at Forum PHP on the topic of "APC & Memcached" are now up and can be downloaded here: Barcelona_APC_MEM2010.pdf
Thanks to the all the listeners, who hopefully were able to keep up with a the slightly rushed timing of the presentation and I am really sorry that there was not much time for questions, if you have any, please catch me during the conference, I'll be happy to answer them. As always feedback (good or bad) is much appreciated via Joind.In at: http://joind.in/2107 Wednesday, November 3. 2010
Hidden Features of PHP Slides Posted by Ilia Alshanetsky
in PHP, Talks at
20:07
Comment (1) Trackbacks (0) Hidden Features of PHP Slides
My slides for the "Hidden Features of PHP" talk that I've given at ZenCon 2010 are now available at:
zendcon_2010_hidden_features.pdf Thanks to everyone for listening, and I look forward to feedback at: http://joind.in/talk/view/2270 Wednesday, November 3. 2010
Memcached, the Better Memcache ... Posted by Ilia Alshanetsky
in PHP, Talks at
11:53
Comments (5) Trackbacks (0) Memcached, the Better Memcache Interface Slides
A litte tardy, but better late then never. The slides from my talk on Memcached extension are now up and can be downloaded from here:
ZendCon_Memcached_2010.pdf Thanks to all the people who attended the talk and I really am looking for your feedback via Join.in . Saturday, October 30. 2010
APC & Memcache the High ... Posted by Ilia Alshanetsky
in PHP, Talks at
06:17
Comments (4) Trackbacks (0) APC & Memcache the High Performance Duo Slides
The slides for my talk on "APC & Memcache the High Performance Duo" are now available here: Barcelona_APC_MEM2010.pdf. Thanks to all the attendees for listening and asking questions, hopefully there are a few converts to APC/Memcached resulting from this talk .
Friday, October 29. 2010
Hidden Features of PHP Slides Posted by Ilia Alshanetsky
in PHP, Talks at
05:41
Comment (1) Trackbacks (0) Hidden Features of PHP Slides
Just finished my talk on the "Hidden Features of PHP" at the PHP Barcelona conference. First time me giving this particular talk, which I think (hope) went pretty well. Big thanks to all the attendees for being there, especially those to braved the large crowd and asked questions.
The slides from the talk are now available online and can be downloaded at: barcelona_2010_hidden_features.pdf Friday, October 22. 2010Conference Schedule
In a few days I will attempt one of my most tricky conference schedules in a long while (perhaps ever), I get the feeling a vacation will be in order after all this.
It was a privilege to get my talks accepted accepted at the PHP Barcelona Conference 2010 in Barcelona, Spain where I will be speaking about Hidden Features of PHP as well as APC & Memcached. Then I get to fly home to Toronto for about 24 hours, and from there travel to ZendCon in Santa Clara, California, where I get to speak about the (awesome) Memcached extension and some more Hidden Features of PHP. Then I fly back to Toronto, for roughly 36 hours, after which I depart to Paris, France to speak at the Forum PHP organized by AFUP to talk about APC & Memcached. Should be fun Monday, August 30. 2010
Beware of the default Apache 2 ... Posted by Ilia Alshanetsky
in PHP at
14:52
Comments (14) Trackbacks (0) Beware of the default Apache 2 config for PHP
About a week ago, I was doing some upgrades on my development machine and came across a rather nasty issue when it comes to how .php(s) files are associated with PHP in Apache. It seems that a number of distros including Gentoo (which is what I was using) are using the following configuration directive to make the PHP module parse PHP files:
The non-obvious problem with the above is that it will allow not only "file.php" to be treated as PHP scripts, but also "file.php.txt", which means that any file containing ".php" in its name, no matter where in the filename, would be treated as a PHP script. This of course creates a rather nasty security hole, since many upload file validation tools, only check the final extension. Consequently allowing the user to by-pass the validation, by simply prefixing another "harmless" extension like .txt, .pdf, etc... to the filename, but still get the code to execute. To mitigate this problem you should instead use the following configuration, that would only pick-up of files ending with a .php extension.
The difference between the two configurations being that the original uses AddHandler (bad) and the latter uses AddType (good). Friday, August 27. 2010PHP Excel Extension 0.8.6
PHP Excel Extension 0.8.6
The 0.8.6 version of the Excel extension was released and is now available for download. This version was updated to contain LibXL 3.0 support which introduces Excel 2007/2010 read/write support, which means that this extension can now read and generate any Excel file. Support for XSLX (2007/2010) format can be enabled by passing "true" as the 3rd parameter to the ExcelBook() construtor. GitHub: http://github.com/iliaal/php_excel/ Source: http://github.com/downloads/iliaal/php_excel/php-excel-0.8.6.tar.bz2 Wednesday, August 11. 2010PHP Excel Extension 0.8.5
The 0.8.5 version of the Excel extension was released and is now available for download, it contains a number of small build fixes, which makes it possible to compile it against all versions of PHP (5.2,5.3,trunk). The Win32 compilation was also fixed and thanks to Kalle, PHP 5.3 win32 binaries are now available for download as well.
GitHub: http://github.com/iliaal/php_excel/ Source: http://github.com/downloads/iliaal/php_excel/php-excel-0.8.5.tar.bz2 Win32 Binaries: http://github.com/downloads/iliaal/php_excel/php-excel-5.3.zip Sunday, August 1. 2010PHP Excel Extension
Since I broke my right hand 3 weeks ago while biking, I found myself with a lot of spare time :/. It is amazing just how limited your ability to do things becomes when you can only use one hand. So, to stave off the boredom, I've been slowly toiling away on a PHP Excel extension that I intend to use at work, which I've finally gotten ready for release today.
You can find it on github at: http://github.com/iliaal/php_excel. Continue reading "PHP Excel Extension" Monday, June 21. 2010Google Docs Backup Script
We are starting to use Google Docs quite a bit more at work and unsurprisingly the question of backup and offline availability comes into play. As part of the backup strategy we also wanted to capture incremental versions of the documents (on a daily basis) in the event we needed to go back to the prior versions.
To this affect I whipped up a small (120 lines) PHP script that will retrieve all your Google documents and save them to a local directory, in the event the document was created/updated in the last 24 hours, thus ensuring snapshot support. Each file name is prefixed with Ymd (Year,month,day) prefix to ensure name uniqueness and provides an easy way to spot similar files or files that were created/updated on the same day. The script has just two dependancies, cURL and Simplexml extensions, which most PHP 5.0+ installs should have. I am publish the script for anyone with similar needs to use/improve under the BSD license... Enjoy. Update I've made a few improvements to the script, some of which have been suggested by Philip (thanks), and since this looks to be an envolving project I've put it into GitHub. Git Repository: http://github.com/iliaal/Google-Docs-Backup Here are the list of changes: Continue reading "Google Docs Backup Script" Saturday, June 12. 2010
APC & Memcache the High ... Posted by Ilia Alshanetsky
in PHP, Talks at
07:18
Comments (0) Trackbacks (0) APC & Memcache the High Performance Duo Slides
My slides from the APC & Memcache the High Performance Duo talk at Dutch PHP Conference are now up and can be downloaded from here.
Thanks everyone for listening. Saturday, June 12. 2010
APC & Memcache the High ... Posted by Ilia Alshanetsky
in PHP, Talks at
07:18
Comments (2) Trackbacks (0) APC & Memcache the High Performance Duo Slides
My slides from the APC & Memcache the High Performance Duo talk at Dutch PHP Conference are now up and can be downloaded from here.
Thanks everyone for listening. |
Categories
|