<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8851433415512632354</id><updated>2012-01-28T15:49:19.021+02:00</updated><category term='linux'/><category term='firefox'/><category term='zce'/><category term='drivers'/><category term='nano'/><category term='software'/><category term='php'/><category term='zend framework'/><category term='nginx'/><category term='xubuntu'/><category term='programming'/><category term='grabbing'/><category term='firebug'/><category term='freshtel'/><category term='ubuntu'/><category term='webdev'/><category term='bash'/><category term='mercurial'/><category term='wget'/><title type='text'>/dev/brain</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-7428801265482105168</id><published>2011-02-15T15:39:00.006+02:00</published><updated>2011-05-15T19:08:39.335+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='freshtel'/><category scheme='http://www.blogger.com/atom/ns#' term='drivers'/><title type='text'>Freshtel в Linux</title><content type='html'>Пролистал сначала основной номер "User and Linux"(11.02), потом дополнительный More Than User в поисках информации о том как завести модем от freshtel в линухах. Как результат - накопал ссылку на страницу разрабатываемого драйвера/программы - http://code.google.com/p/gctwimax/. Больши никакой информации.&lt;br /&gt;&lt;br /&gt;Как установить и использовать можно прочитать в скачанном с гуглкода архиве(файл RUN).&lt;br /&gt;&lt;br /&gt;На данный момент актуальная версия программы: gctwimax-0.0.1d.tar.gz&lt;br /&gt;---&lt;br /&gt;Техническая &lt;a href="http://pakhomov.in.ua/"&gt;поддержка сайтов&lt;/a&gt; в Киеве.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-7428801265482105168?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/7428801265482105168/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=7428801265482105168' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/7428801265482105168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/7428801265482105168'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2011/02/freshtel-linux.html' title='Freshtel в Linux'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-1797042419429074964</id><published>2010-08-25T16:22:00.005+03:00</published><updated>2012-01-28T15:49:19.029+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>TinyMCE, ImageManager(dustweb), php 5.3.x fix</title><content type='html'>Появились ошибки на одном из древних сайтов после обновления на php 5.3.3, а именно E_DEPRECATED split в дереве папок ImageManager'a и что про не поддерживаемость JPG типа изображений(Image_Toolbox: can't read JPG ...). Решается внесением нескольких правок в два файла:&lt;br /&gt;1.  images/connector/php/Image_Toolbox.class.php:&lt;br /&gt;в районе 110 строки заменить&lt;br /&gt;&lt;code&gt;&lt;br /&gt;if ($gd_info['JPG Support']) {&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;на&lt;br /&gt;&lt;code&gt;&lt;br /&gt;($gd_info['JPG Support'] || $gd_info['JPEG Support']) {&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;2. images/connector/php/index.php&lt;br /&gt;в трех местах заменить&lt;br /&gt;&lt;code&gt;&lt;br /&gt;split('[\\/]'&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;на&lt;br /&gt;&lt;code&gt;&lt;br /&gt;preg_split('#[\\/]#'&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;---&lt;br /&gt;&lt;a href="http://referat4u.net.ua"&gt;Скачать реферат&lt;/a&gt; бесплатно и без регистрации. Новости образования.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-1797042419429074964?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/1797042419429074964/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=1797042419429074964' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/1797042419429074964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/1797042419429074964'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2010/08/tinymce-imagemanagerdustweb-php-53x-fix.html' title='TinyMCE, ImageManager(dustweb), php 5.3.x fix'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-4486122625125750731</id><published>2010-08-20T15:55:00.002+03:00</published><updated>2010-08-20T15:59:49.679+03:00</updated><title type='text'>nodejs 0.2.0</title><content type='html'>Собственно свеженькая версия.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-4486122625125750731?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/4486122625125750731/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=4486122625125750731' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/4486122625125750731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/4486122625125750731'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2010/08/nodejs-020.html' title='nodejs 0.2.0'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-6972754401505781286</id><published>2010-07-02T17:50:00.002+03:00</published><updated>2010-07-02T17:52:14.200+03:00</updated><title type='text'>Обновление всех репозиториев в папке</title><content type='html'>updater.sh:&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;echo "Updating git repositories"&lt;br /&gt;find . -type d -name ".git" -exec dirname {} \;|\&lt;br /&gt;xargs realpath|\&lt;br /&gt;while read i;&lt;br /&gt;do&lt;br /&gt;    echo `basename $i`&lt;br /&gt;    cd "$i";&lt;br /&gt;    git pull;&lt;br /&gt;done;&lt;br /&gt;&lt;br /&gt;echo "Updating mercurial repositories"&lt;br /&gt;find . -type d -name ".hg" -exec dirname {} \; |\&lt;br /&gt;xargs realpath |\&lt;br /&gt;while read i;&lt;br /&gt;do&lt;br /&gt;    echo `basename $i`&lt;br /&gt;    cd "$i";&lt;br /&gt;    hg pull;&lt;br /&gt;    hg up -C;&lt;br /&gt;done;&lt;br /&gt;&lt;br /&gt;echo "Updating subversion repositories"&lt;br /&gt;find . -maxdepth 2 -type d -name ".svn" -exec dirname {} \;| \&lt;br /&gt;xargs realpath |\&lt;br /&gt;while read i;&lt;br /&gt;do&lt;br /&gt;        echo `basename $i`&lt;br /&gt;        cd "$i";&lt;br /&gt;        svn up;&lt;br /&gt;done;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-6972754401505781286?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/6972754401505781286/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=6972754401505781286' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/6972754401505781286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/6972754401505781286'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2010/07/blog-post.html' title='Обновление всех репозиториев в папке'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-2236987655186758645</id><published>2010-05-18T13:04:00.003+03:00</published><updated>2010-05-18T13:13:35.313+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>php: array_filter_keys</title><content type='html'>Задача: получить из входного массива только заданные ключи&lt;br /&gt;&lt;br /&gt;Решение:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;code class="php"&gt;&lt;br /&gt;function array_filter_keys(array $array, array $keys){&lt;br /&gt;return array_intersect_key($array, array_flip($keys));&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;code class="php"&gt;&lt;br /&gt;$input = array(&lt;br /&gt;'key1' =&gt; 'qqq',&lt;br /&gt;'key2' =&gt; 'www',&lt;br /&gt;'key3' =&gt; 'eee'&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;var_dump(array_filter_keys($input, array('key1', 'key2', 'key5')));&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;array&lt;br /&gt;'key1' =&gt; string 'qqq' (length=3)&lt;br /&gt;'key2' =&gt; string 'www' (length=3)&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-2236987655186758645?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/2236987655186758645/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=2236987655186758645' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/2236987655186758645'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/2236987655186758645'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2010/05/php-arrayfilterkeys.html' title='php: array_filter_keys'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-4105393931804042044</id><published>2010-02-25T11:12:00.002+02:00</published><updated>2010-02-25T11:21:08.929+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mercurial'/><title type='text'>gui для просомтра лога mercurial</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_4hoFFLxokp8/S4ZA4QcjXZI/AAAAAAAAACg/5Bxab8YBWRA/s1600-h/hgview.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 242px;" src="http://1.bp.blogspot.com/_4hoFFLxokp8/S4ZA4QcjXZI/AAAAAAAAACg/5Bxab8YBWRA/s400/hgview.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5442108534955400594" /&gt;&lt;/a&gt;&lt;br /&gt;Собственно вот: &lt;br /&gt;hg clone http://www.logilab.org/cgi-bin/hgwebdir.cgi/hgview .&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-4105393931804042044?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/4105393931804042044/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=4105393931804042044' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/4105393931804042044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/4105393931804042044'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2010/02/gui-mercurial.html' title='gui для просомтра лога mercurial'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_4hoFFLxokp8/S4ZA4QcjXZI/AAAAAAAAACg/5Bxab8YBWRA/s72-c/hgview.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-1820629868742555775</id><published>2010-02-09T17:44:00.004+02:00</published><updated>2010-02-09T17:53:39.895+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zend framework'/><title type='text'>Автозагрузка библиотек модуля в ZendFramework</title><content type='html'>&lt;pre&gt;&lt;code class="php"&gt;&lt;br /&gt;class Core_Bootstrap extends Zend_Application_Module_Bootstrap {&lt;br /&gt; protected function _initModule(){&lt;br /&gt;  $resourceLoader = new Zend_Loader_Autoloader_Resource(array(&lt;br /&gt;   'namespace' =&gt; '',&lt;br /&gt;   'basePath'  =&gt;  dirname(__FILE__),&lt;br /&gt;  ));&lt;br /&gt;  $resourceLoader-&gt;addResourceTypes(array(&lt;br /&gt;   'library' =&gt; array(&lt;br /&gt;    'path'      =&gt; 'library',&lt;br /&gt;    'namespace' =&gt; 'Core_'&lt;br /&gt;   )&lt;br /&gt;  ));&lt;br /&gt;  $autoloader = Zend_Loader_Autoloader::getInstance();&lt;br /&gt;  $autoloader-&gt;pushAutoloader($resourceLoader);&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Теперь в других модулях можно пользоваться библиотекой модуля Core, например:&lt;br /&gt;$oElement = new Core_Form_Element_Image(); // extends Zend_Form_Element_File&lt;br /&gt;для создания элемента формы с загрузкой(и предпросмотром уже загруженного) файла изображения.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-1820629868742555775?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/1820629868742555775/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=1820629868742555775' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/1820629868742555775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/1820629868742555775'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2010/02/zendframework.html' title='Автозагрузка библиотек модуля в ZendFramework'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-1794708759468423831</id><published>2009-11-24T16:02:00.002+02:00</published><updated>2010-02-16T14:15:12.205+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='grabbing'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='wget'/><title type='text'>Массовый граббинг url'ов с помошью wget</title><content type='html'>&lt;code&gt;&lt;br /&gt;#!/usr/bin/env bash&lt;br /&gt;rm page*&lt;br /&gt;for i in {1..20}&lt;br /&gt;do&lt;br /&gt;   wget --limit-rate=25k --wait=5 --random-wait http://domain/page$i.html&lt;br /&gt;done&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-1794708759468423831?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/1794708759468423831/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=1794708759468423831' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/1794708759468423831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/1794708759468423831'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/11/url-wget.html' title='Массовый граббинг url&apos;ов с помошью wget'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-5642258268496242936</id><published>2009-09-30T11:35:00.003+03:00</published><updated>2009-09-30T11:40:52.218+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='nano'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>Подсветка синтаксиса в nano</title><content type='html'># cd /usr/share/nano&lt;br /&gt;# wget http://nanosyntax.googlecode.com/svn/trunk/syntax-nanorc/php.nanorc&lt;br /&gt;# nano /etc/nanorc &lt;br /&gt; - раскомментировать необходимые языки (html,python,c)&lt;br /&gt; - добавить в конец файла&lt;br /&gt;## PHP    &lt;br /&gt; include "/usr/share/nano/php.nanorc"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-5642258268496242936?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/5642258268496242936/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=5642258268496242936' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/5642258268496242936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/5642258268496242936'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/09/nano.html' title='Подсветка синтаксиса в nano'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-3640916239338376478</id><published>2009-08-11T16:13:00.014+03:00</published><updated>2009-12-03T16:07:17.680+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='zend framework'/><title type='text'>ZF: Добавление маршрутов при загрузке модуля</title><content type='html'>Редактируем файл application/modules/captcha/Bootstrap.php&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;&lt;?php&lt;br /&gt;class Captcha_Bootstrap extends Zend_Application_Module_Bootstrap {&lt;br /&gt; protected function _initModule(){&lt;br /&gt;  $oRouter = $this-&gt;getApplication()-&gt;frontController-&gt;getRouter();&lt;br /&gt;  $oRouter-&gt;addRoute('captcha', new Zend_Controller_Router_Route_Static('captcha', array(&lt;br /&gt;   'module'  =&gt; 'captcha',&lt;br /&gt;   'controller' =&gt; 'index',&lt;br /&gt;   'action'  =&gt; 'generate'&lt;br /&gt;  )));&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;P.S. Bootstrap'ing модулей будет происходит автоматически при подключении ресурса Modules из ZF(например из application.ini: resources.modules[] = "")&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-3640916239338376478?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/3640916239338376478/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=3640916239338376478' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/3640916239338376478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/3640916239338376478'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/08/zf.html' title='ZF: Добавление маршрутов при загрузке модуля'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-8788941485073565703</id><published>2009-07-16T14:34:00.003+03:00</published><updated>2009-07-16T14:45:02.502+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='webdev'/><category scheme='http://www.blogger.com/atom/ns#' term='firebug'/><title type='text'>Релиз FireBug 1.4</title><content type='html'>&lt;a href="http://code.google.com/p/fbug/source/browse/branches/firebug1.4/docs/ReleaseNotes_1.4.txt"&gt;Список изменений &lt;/a&gt;&lt;br /&gt;&lt;a href="http://getfirebug.com/releases/firebug/1.4/firebug-1.4.0.xpi"&gt;Собственно xpi&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Firebug, пожалуй, лучшее средство для облегчения web-разработки: исследование javascript, dom, html, css, http; debug-log серверных скриптов(при использовании FirePHP), web-оптимизация(Google Page Speed); просмотр и управление cookies(Firecookie). Версия для Firefox 3.0-3.5&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-8788941485073565703?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/8788941485073565703/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=8788941485073565703' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/8788941485073565703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/8788941485073565703'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/07/firebug-14.html' title='Релиз FireBug 1.4'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-8920225353616065780</id><published>2009-07-16T11:25:00.003+03:00</published><updated>2009-07-16T11:50:41.579+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Использование Firefox 3.5 по умолчанию для ссылок</title><content type='html'>Т.к.  FF 3.5 будет по-умолчанию скорее всего только в Ubuntu 9.10 (Karmic Koala) решил все же его поставить и использовать по умолчанию в Ubuntu 9.04.&lt;br /&gt;&lt;br /&gt;Установил firefox-3.5-branding из репы пакетов, но ссылки из других приложение по-прежнему открывались в старой версии лисы.&lt;br /&gt;&lt;br /&gt;Эту ситуацию исправил путем запуска gconf-editor и замены firefox на firefox-3.5 в ключах /desktop/gnome/url-handlers/http/command и /desktop/gnome/url-handlers/https/command.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-8920225353616065780?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/8920225353616065780/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=8920225353616065780' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/8920225353616065780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/8920225353616065780'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/07/firefox-35.html' title='Использование Firefox 3.5 по умолчанию для ссылок'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-7710567579995429727</id><published>2009-07-15T17:50:00.002+03:00</published><updated>2009-07-16T14:47:56.997+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='webdev'/><title type='text'></title><content type='html'>&lt;cite&gt;Digg.com и youtube.com заявили, что в скором времени перестанут поддерживать IE6. В связи с этим сервисы предлагает заблаговременно перейти на Internet Explorer 8, Google Chrome или Mozilla Firefox 3.5.&lt;br /&gt;&lt;br /&gt;Скорее бы уже...&lt;br /&gt;&lt;/cite&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-7710567579995429727?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/7710567579995429727/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=7710567579995429727' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/7710567579995429727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/7710567579995429727'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/07/digg.html' title=''/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-3198431978631748425</id><published>2009-06-30T17:45:00.005+03:00</published><updated>2009-06-30T18:31:17.682+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>Давно ожидаемые релизы</title><content type='html'>1. &lt;a href="http://www.opennet.ru/opennews/art.shtml?num=22392" target="_blank"&gt;PHP 5.3.0&lt;/a&gt; (namespaces, mysqlnd, late static binding, оператор ?:, замыкания и лямбда-функции, удалена поддержка режима совместимости zend.ze1, добавлена константа __DIR__)&lt;br /&gt;2. &lt;a href="http://www.opennet.ru/opennews/art.shtml?num=22396" target="_blank"&gt;FireFox 3.5&lt;/a&gt; (приватный серфинг, новый javascript движок, новые свойства CSS 2.1 и 3, нативный JSON, фоновое выполнения javascript, querySelectors и querySelectorsAll, cross-site AJAX)&lt;br /&gt;&lt;br /&gt;С нетерпением жду появления новой версии лисы в репозиториях ubuntu.&lt;br /&gt;&lt;br /&gt;Что до php, то не порадовало использование разделителя '\" для пространств имен (всё-таки надеялся что будет нечто более привычное "::" или ".")  к остальным нововведениям буду тоже присматриваться, все-таки надеюсь в скором времени пополнить ряды ZCE...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-3198431978631748425?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/3198431978631748425/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=3198431978631748425' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/3198431978631748425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/3198431978631748425'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/06/blog-post.html' title='Давно ожидаемые релизы'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-6410422020552006062</id><published>2009-06-05T11:38:00.006+03:00</published><updated>2009-06-05T11:56:34.272+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='firebug'/><title type='text'>Google Page Speed</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Ответ от гугля на яховский yslow в виде расширения для FireFox интегрирующегося в FireBug: &lt;a href="http://code.google.com/speed/page-speed/"&gt;http://code.google.com/speed/page-speed/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_4hoFFLxokp8/Sijaxke_skI/AAAAAAAAACU/4CV1wDfHoiI/s1600-h/page-speed.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 382px;" src="http://4.bp.blogspot.com/_4hoFFLxokp8/Sijaxke_skI/AAAAAAAAACU/4CV1wDfHoiI/s400/page-speed.png" alt="" id="BLOGGER_PHOTO_ID_5343761503017218626" border="0" /&gt;&lt;/a&gt;Создалось впечатление что информации выдает несколько больше чем yslow.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-6410422020552006062?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/6410422020552006062/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=6410422020552006062' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/6410422020552006062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/6410422020552006062'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/06/google-page-speed.html' title='Google Page Speed'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_4hoFFLxokp8/Sijaxke_skI/AAAAAAAAACU/4CV1wDfHoiI/s72-c/page-speed.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-5613475438491153814</id><published>2009-05-26T12:09:00.013+03:00</published><updated>2009-05-27T11:21:37.238+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nginx'/><title type='text'>nginx 0.7 stable</title><content type='html'>Буквально вчера ветка 0.7.х http-сервера nginx была обьявлена как stable, что не может не радовать =). Впринципе она довольно давно используется на одном посещаемом сайте и проблем с ней замечено небыло.&lt;br /&gt;&lt;br /&gt;Среди заявленных нововведений (по сревнению с предыдущей stable веткой):&lt;br /&gt;&lt;ul&gt;&lt;li&gt; кэширование &lt;a href="http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_cache"&gt;проксированных&lt;/a&gt; и &lt;a href="http://sysoev.ru/nginx/docs/http/ngx_http_fastcgi_module.html#fastcgi_cache"&gt;FastCGI-серверов&lt;/a&gt;; &lt;/li&gt;&lt;li&gt; директива &lt;a href="http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#try_files"&gt;try_files&lt;/a&gt;; &lt;/li&gt;&lt;li&gt; поддержка выделений в регулярных выражениях в директивах &lt;a href="http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#location"&gt;location&lt;/a&gt; и &lt;a href="http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#server_name"&gt;server_name&lt;/a&gt; и ссылок на эти выделения во всех директивах, поддерживающих переменные, например, в директиве &lt;a href="http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#alias"&gt;alias&lt;/a&gt;; &lt;/li&gt;&lt;li&gt; два фильтра — &lt;a href="http://sysoev.ru/"&gt;XSLT&lt;/a&gt; и преобразования &lt;a href="http://sysoev.ru/nginx/docs/http/ngx_http_image_filter_module.html"&gt;изображений&lt;/a&gt;; &lt;/li&gt;&lt;li&gt;&lt;a href="http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#listen"&gt;предварительная поддержка IPv6&lt;/a&gt;; &lt;/li&gt;&lt;li&gt;&lt;a href="http://sysoev.ru/nginx/docs/windows.html"&gt;nginx/Windows&lt;/a&gt;. &lt;/li&gt;&lt;/ul&gt;Наконец-то появилось долгожданное кэширование! Динамический ресайз изображений тоже порадовал.&lt;br /&gt;&lt;br /&gt;Собственно эти двум нововведением и их совместном использовании и будет посвящен дальнейший текст.&lt;br /&gt;&lt;br /&gt;Чего хочется? Хочется сследующего:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;ресайзинг изображений не на application-level, а на server-level (в любой момент можно сгенерировать тумбнайл необходимого размера, причем это будет сделано "по запросу")&lt;/li&gt;&lt;li&gt;контролированое (в разумных по времени пределах) кэширование полученных тумбнайлов на frontend-серверах&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Для реализации этой задачи, разумеется средствами nginx, создадим два дополнительных сервера:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;backend-сервер изображений (ресайзит оригинальны)&lt;/li&gt;&lt;li&gt;frontend-сервер thumbnail'ов (сохраняет у себя в кэше)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Словами nginx.conf (оба сервера на одной машине) это выглядит вот так:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;http {&lt;br /&gt; proxy_cache_path /var/nginx/cache levels=1:2 keys_zone=thumbnail:10m;&lt;br /&gt; ...&lt;br /&gt; # backend dynamic resizing&lt;br /&gt; server {&lt;br /&gt;   listen *:80;&lt;br /&gt;   server_name i175d.site.domain;&lt;br /&gt;   root /var/www/site.domain/public_html/images;&lt;br /&gt;   location / {&lt;br /&gt;     image_filter_jpeg_quality 95;&lt;br /&gt;     image_filter crop 175 120;&lt;br /&gt;   }&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; # сервер thumbnail'ов&lt;br /&gt; server {&lt;br /&gt;   listen *:80;&lt;br /&gt;   server_name i175.site.domain;&lt;br /&gt;&lt;br /&gt;   location / {&lt;br /&gt;     proxy_cache thumbnail;&lt;br /&gt;     proxy_cache_valid  60m;&lt;br /&gt;     proxy_pass http://i175d.site.domain;&lt;br /&gt;   }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;Отдача статического изображения напрямую:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;#ab -n 1000 -c 100 http://i.site.domain/image_static.jpg&lt;br /&gt;&lt;br /&gt;Concurrency Level:      100&lt;br /&gt;Time taken for tests:   0.144 seconds&lt;br /&gt;Complete requests:      1000&lt;br /&gt;Failed requests:        0&lt;br /&gt;Write errors:           0&lt;br /&gt;Total transferred:      13765478 bytes&lt;br /&gt;HTML transferred:       13544630 bytes&lt;br /&gt;Requests per second:    6942.18 [#/sec] (mean)&lt;br /&gt;Time per request:       14.405 [ms] (mean)&lt;br /&gt;Time per request:       0.144 [ms] (mean, across all concurrent requests)&lt;br /&gt;Transfer rate:          93322.66 [Kbytes/sec] received&lt;br /&gt;&lt;br /&gt;Connection Times (ms)&lt;br /&gt;        min  mean[+/-sd] median   max&lt;br /&gt;Connect:        1    4   1.5      3       8&lt;br /&gt;Processing:     3   10   4.0      9      20&lt;br /&gt;Waiting:        2    7   3.5      6      15&lt;br /&gt;Total:          5   14   4.6     13      25&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;Ресайзинг без кэширования (закоментированы proxy_cache_valid и proxy_cache):&lt;br /&gt;&lt;pre&gt;&lt;code&gt;#ab -n 1000 -c 100 http://i175.site.domain/image.jpg&lt;br /&gt;&lt;br /&gt;Concurrency Level:      100&lt;br /&gt;Time taken for tests:   13.863 seconds&lt;br /&gt;Complete requests:      1000&lt;br /&gt;Failed requests:        0&lt;br /&gt;Write errors:           0&lt;br /&gt;Total transferred:      13389000 bytes&lt;br /&gt;HTML transferred:       13175000 bytes&lt;br /&gt;Requests per second:    72.13 [#/sec] (mean)&lt;br /&gt;Time per request:       1386.347 [ms] (mean)&lt;br /&gt;Time per request:       13.863 [ms] (mean, across all concurrent requests)&lt;br /&gt;Transfer rate:          943.14 [Kbytes/sec] received&lt;br /&gt;&lt;br /&gt;Connection Times (ms)&lt;br /&gt;        min  mean[+/-sd] median   max&lt;br /&gt;Connect:        0    3   8.5      0      32&lt;br /&gt;Processing:    58 1275 602.5   1187    3303&lt;br /&gt;Waiting:       39 1274 602.5   1187    3302&lt;br /&gt;Total:         71 1277 603.2   1189    3303&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;С вкюченным кэшированием (1-й запуск)&lt;br /&gt;&lt;pre&gt;&lt;code&gt;#ab -n 1000 -c 100 http://i175.site.domain/image.jpg&lt;br /&gt;&lt;br /&gt;Concurrency Level:      100&lt;br /&gt;Time taken for tests:   1.617 seconds&lt;br /&gt;Complete requests:      1000&lt;br /&gt;Failed requests:        0&lt;br /&gt;Write errors:           0&lt;br /&gt;Total transferred:      13367000 bytes&lt;br /&gt;HTML transferred:       13175000 bytes&lt;br /&gt;Requests per second:    618.55 [#/sec] (mean)&lt;br /&gt;Time per request:       161.670 [ms] (mean)&lt;br /&gt;Time per request:       1.617 [ms] (mean, across all concurrent requests)&lt;br /&gt;Transfer rate:          8074.31 [Kbytes/sec] received&lt;br /&gt;&lt;br /&gt;Connection Times (ms)&lt;br /&gt;        min  mean[+/-sd] median   max&lt;br /&gt;Connect:        0    1   1.9      0       8&lt;br /&gt;Processing:     8  160 335.3     20    1502&lt;br /&gt;Waiting:        8  160 335.3     20    1502&lt;br /&gt;Total:          8  160 336.5     20    1506&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;С включенным кэшироваием (2-й запуск):&lt;br /&gt;&lt;pre&gt;&lt;code&gt;#ab -n 1000 -c 100 http://i175.site.domain/image.jpg&lt;br /&gt;&lt;br /&gt;Concurrency Level:      100&lt;br /&gt;Time taken for tests:   0.151 seconds&lt;br /&gt;Complete requests:      1000&lt;br /&gt;Failed requests:        0&lt;br /&gt;Write errors:           0&lt;br /&gt;Total transferred:      13367000 bytes&lt;br /&gt;HTML transferred:       13175000 bytes&lt;br /&gt;Requests per second:    6601.23 [#/sec] (mean)&lt;br /&gt;Time per request:       15.149 [ms] (mean)&lt;br /&gt;Time per request:       0.151 [ms] (mean, across all concurrent requests)&lt;br /&gt;Transfer rate:          86170.50 [Kbytes/sec] received&lt;br /&gt;&lt;br /&gt;Connection Times (ms)&lt;br /&gt;        min  mean[+/-sd] median   max&lt;br /&gt;Connect:        0    4   4.0      3      17&lt;br /&gt;Processing:     2   10   4.6      9      21&lt;br /&gt;Waiting:        1    7   3.9      7      19&lt;br /&gt;Total:          5   14   6.3     11      34&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;Как видно по результатам отдача закэшированного изображения происходит практически с такой же скоростью как и отдача статического файла напрямую. Большим плюсом в такой схеме является то, что nginx сам следит за устареванием кэша и чистит его по истечении заданного в конфиге времени.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-5613475438491153814?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/5613475438491153814/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=5613475438491153814' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/5613475438491153814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/5613475438491153814'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/05/nginx-07-stable.html' title='nginx 0.7 stable'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-1166423012992826058</id><published>2009-04-15T18:28:00.003+03:00</published><updated>2009-04-16T11:14:32.509+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='xubuntu'/><title type='text'>Ubuntu 9.04 Beta</title><content type='html'>&lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;Не удержался от соблазна поставить xubuntu 9.04 до официального релиза. update-manager -d, 1299 пакетов(300мб)-установка-очистка-перезагрузка... в голове крутится “а вдруг не ребутнется, а вдруг ...”, но уже поздно. И вот на тебе: на загрузке какого-то кернел-модуля(vboxdrv) система начинает о чем то долго думать... ну ничего пусть подумает что по чем. После минут 10 ожидания залогинился на другую консоль и ребутнул машину. Со второго раза все загрузилось шустро и без “косяков”.   &lt;/p&gt;  &lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;Приятности:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;менеджер сети  наконец-то дал удалить соединение  auto-eth0 + автоматически реагирует на  включение/отключение wifi&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;апплет Keyboard  Layouts сам распознал ru-winkeys layout и дал  возможность задать ctrl+shift для переключения  раскладки&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;ссылки из  prism google reader как и должно быть открываются  в браузере&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;ekiga увидела  камеру (в 8.10 только XawTV её распознал)&lt;br /&gt;&lt;/p&gt;  &lt;/li&gt;&lt;/ul&gt;  &lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;Траблы:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;громкость  перестала регулироваться через  медиа-кнопки ноута(HP Pavilion dv6000)&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0in;" lang="ru-RU"&gt;firefox перстал  отображать flash-ролики (переустановка  adobe flash-player'a не помогла)&lt;/p&gt; &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-1166423012992826058?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/1166423012992826058/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=1166423012992826058' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/1166423012992826058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/1166423012992826058'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/04/ubuntu-904-beta.html' title='Ubuntu 9.04 Beta'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-7101471154179922007</id><published>2009-04-13T17:21:00.001+03:00</published><updated>2009-05-08T12:28:48.921+03:00</updated><title type='text'>Прозрачность под текстом иконок на рабочем столе Xubuntu</title><content type='html'>&lt;pre&gt;&lt;br /&gt;cat ~/.gtkrc-2.0&lt;br /&gt;style "xfdesktop-icon-view" {&lt;br /&gt;XfdesktopIconView::label-alpha = 5&lt;br /&gt;#font_name = "Sans Bold"&lt;br /&gt;&lt;br /&gt;base[NORMAL] = "#FFFFFF"&lt;br /&gt;base[SELECTED] = "#FFAAAA"&lt;br /&gt;base[ACTIVE] = "#AAFFAA"&lt;br /&gt;&lt;br /&gt;fg[NORMAL] = "#FFFFFF"&lt;br /&gt;fg[SELECTED] = "#FFFFFF"&lt;br /&gt;fg[ACTIVE] = "#FFFFFF"&lt;br /&gt;}&lt;br /&gt;widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_4hoFFLxokp8/SeNMHNbMMxI/AAAAAAAAAAU/f_PYQb6abcQ/s1600-h/Screenshot.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 250px;" src="http://2.bp.blogspot.com/_4hoFFLxokp8/SeNMHNbMMxI/AAAAAAAAAAU/f_PYQb6abcQ/s400/Screenshot.png" alt="" id="BLOGGER_PHOTO_ID_5324182871228560146" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-7101471154179922007?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/7101471154179922007/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=7101471154179922007' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/7101471154179922007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/7101471154179922007'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2009/04/blog-post.html' title='Прозрачность под текстом иконок на рабочем столе Xubuntu'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_4hoFFLxokp8/SeNMHNbMMxI/AAAAAAAAAAU/f_PYQb6abcQ/s72-c/Screenshot.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8851433415512632354.post-8534195946436214623</id><published>2008-10-30T17:02:00.003+02:00</published><updated>2011-01-11T16:55:33.468+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zce'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>ZCE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_4hoFFLxokp8/SQnMoUnPoCI/AAAAAAAAAAM/KXjnuiyP3Lg/s1600-h/php+%7C+architect+-+The+PHP+Magazine+for+PHP+Professionals_1225378775769.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 329px;" src="http://4.bp.blogspot.com/_4hoFFLxokp8/SQnMoUnPoCI/AAAAAAAAAAM/KXjnuiyP3Lg/s400/php+%7C+architect+-+The+PHP+Magazine+for+PHP+Professionals_1225378775769.png" alt="" id="BLOGGER_PHOTO_ID_5262962632659279906" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8851433415512632354-8534195946436214623?l=alpaxo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alpaxo.blogspot.com/feeds/8534195946436214623/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8851433415512632354&amp;postID=8534195946436214623' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/8534195946436214623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8851433415512632354/posts/default/8534195946436214623'/><link rel='alternate' type='text/html' href='http://alpaxo.blogspot.com/2008/10/blog-post.html' title='ZCE'/><author><name>alpaxo</name><uri>http://www.blogger.com/profile/15153886229959617260</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_4hoFFLxokp8/SeNWWPqPZ0I/AAAAAAAAAAs/6ycJerB3hus/S220/413599216450085a551353.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_4hoFFLxokp8/SQnMoUnPoCI/AAAAAAAAAAM/KXjnuiyP3Lg/s72-c/php+%7C+architect+-+The+PHP+Magazine+for+PHP+Professionals_1225378775769.png' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
