<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Заметки Павла Титова</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/" />
    <link rel="self" type="application/atom+xml" href="http://www.ptitov.ru/blog/atom.xml" />
    <id>tag:www.ptitov.ru,2007-10-27:/blog//1</id>
    <updated>2009-08-04T20:40:33Z</updated>
    
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Publishing Platform 4.01</generator>

<entry>
    <title>Сравнение American Express, Diners Club и других карт с накоплением воздушных милей</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2009/08/-american-express-diners-club.html" />
    <id>tag:www.ptitov.ru,2009:/blog//1.27</id>

    <published>2009-08-03T16:47:26Z</published>
    <updated>2009-08-04T20:40:33Z</updated>

    <summary>Вчера у меня вышел спор с одной моей подругой о том, какими карточками выгоднее расплачиваться, если цель при этом ? получить бесплатный авиаперелет. Принципы начисления у платежных систем и банков немного разные, к тому же есть традиционно банковские карточки Visa...</summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Деньги" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="авиакомпании" label="авиакомпании" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="банки" label="банки" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="карты" label="карты" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>Вчера у меня вышел спор с одной моей подругой о том, какими карточками выгоднее расплачиваться, если цель при этом ? получить бесплатный авиаперелет. Принципы начисления у платежных систем и банков немного разные, к тому же есть традиционно банковские карточки <a href="http://visa.com.ru/">Visa</a> и <a href="http://www.mastercard.com/ru/">MasterCard</a>, а есть клубные <a href="http://www.americanexpress-rsb.ru/rus/">American Express</a> и <a href="http://www.diners.ru">Diners Club</a>. Так что рассчитать на пальцах не вышло и я решил сделать табличку для сравнения.</p>]]>
        <![CDATA[<table border>
<tr>
<td rowspan="2">Карта</td>
<td rowspan="2">Банк</td>
<td rowspan="2">Годовое обслуживание<br />(со страховкой)</td>
<td colspan="2">Сколько нужно потратить для одного бесплатного полета</td>
</tr>
<tr><td>в Берлин</td><td>в Лондон</td></tr>
<tr>
<td><a href="http://www.americanexpress-rsb.ru/rus/cards/type-of-cards/transaero_gold/">Transaero American Express Platinum</a></td>
<td>Русский стандарт</td>
<td>7 000 р.</td>
<td>270 000 р.<br />Трансаэро</td>
<td>359 100 р.<br />Трансаэро</td>
</tr>
<tr>
<td><a href="http://www.americanexpress-rsb.ru/rus/cards/type-of-cards/ba_premium/">BA American Express Premium</a></td>
<td>Русский стандарт</td>
<td>7 000 р.</td>
<td>285 714 р.<br />British Airways</td>
<td>285 714 р.<br />British Airways</td>
</tr>
<tr>
<td>Visa Gold Аэрофлот</td>
<td>Сбербанк</td>
<td>? + 315</td>
<td>300 000<br />Аэрофлот</td>
<td>501 000<br />Аэрофлот</td>
</tr>
<tr>
<td><a href="http://www.americanexpress-rsb.ru/rus/cards/type-of-cards/transaero_gold/">Transaero American Express Gold</a></td>
<td>Русский стандарт</td>
<td>3 000 р.</td>
<td>360 000 р.</td>
<td>480 000 р.</td>
</tr>
<tr>
<td>Diners Club</td>
<td>-</td>
<td>от 4 500 р.</td>
<td>450 000<br />Аэрофлот</td>
<td>750 000<br />Аэрофлот</td>
</tr>
<tr>
<td>Visa Classic Аэрофлот</td>
<td>Сбербанк</td>
<td>? + 315</td>
<td>450 000<br />Аэрофлот</td>
<td>750 000<br />Аэрофлот</td>
</tr>



<tr><td colspan="4">Карты без страховки</td></tr>
<tr>
<td>Aeroflot ? MasterCard Platinum</td>
<td>Альфа-банк</td>
<td>6887</td>
<td>225 000<br />Аэрофлот</td>
<td>375 750<br />Аэрофлот</td>
</tr>
<tr>
<td>Aeroflot ? MasterCard Gold</td>
<td>Альфа-банк</td>
<td>3 587 р.</td>
<td>300 000<br />Аэрофлот</td>
<td>501 000<br />Аэрофлот</td>
</tr>
<tr>
<td><a href="http://www.citibank.ru/russia/cards/rus/aeroflot_main.htm">Visa Аэрофлот</a></td>
<td>Ситибанк</td>
<td>950 р.</td>
<td>450 000 р.<br />Аэрофлот</td>
<td>584 500 р.<br />Аэрофлот</td>
</tr>
<tr>
<td><a href="http://www.bank.rs.ru/ru/cards/Aeroflot/">MasterCard Аэрофлот</a></td>
<td>Русский Стандарт</td>
<td>1 500 р.</td>
<td>450 000 р.<br />Аэрофлот</td>
<td>751 500<br />Аэрофлот</td>
</tr>
<tr>
<td>Aeroflot ? MasterCard Standard</td>
<td>Альфа-банк</td>
<td>1 847 р.</td>
<td>450 000<br />Аэрофлот</td>
<td>751 500<br />Аэрофлот</td>
</tr>
<tr>
<td><a href="http://www.citibank.ru/russia/cards/rus/mm_main.htm">Mastercard Miles & More</a></td>
<td>Ситибанк</td>
<td>950 р.</td>
<td>900 000 р.<br />Lufthansa</td>
<td>900 000 р.<br />Lufthansa</td>
</tr>
</table>

<p>Получается, что для обычного человека пользы от всех этих карт немного, но если такой карточкой начать оплачивать затраты бизнеса, по которым не требуются списывать НДС, то перспективы открываются очень даже интересные.</p>]]>
    </content>
</entry>

<entry>
    <title>WiFi-позиционирование идет в Москву</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2008/06/wi2geo.html" />
    <id>tag:www.ptitov.ru,2008:/blog//1.26</id>

    <published>2008-06-10T21:08:35Z</published>
    <updated>2008-06-12T08:02:46Z</updated>

    <summary><![CDATA[На&nbsp;днях воспользовался сервисом позиционирования Wi2Geo&nbsp;&#151; здорово, это работает. Он&nbsp;верно указал мое местоположение с&nbsp;точностью порядка 20&nbsp;метров. Wi2Geo&nbsp;&#151; это сервис WiFi-навигации. Идея WiFi-навигации такая: зная расположение точек доступа в&nbsp;городе и&nbsp;измерив мощность сигнала от&nbsp;ближайших точек, которых обычно видно несколько, можно достаточно точно оценить...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Интернет" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="navigation" label="navigation" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="wifi" label="WiFi" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windowsmobile" label="Windows Mobile" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>На&nbsp;днях воспользовался сервисом позиционирования <a href="http://wi2geo.ru/">Wi2Geo</a>&nbsp;&#151; здорово, это работает. Он&nbsp;верно указал мое местоположение с&nbsp;точностью порядка 20&nbsp;метров.</p>

<p>Wi2Geo&nbsp;&#151; это сервис WiFi-навигации. Идея WiFi-навигации такая: зная расположение точек доступа в&nbsp;городе и&nbsp;измерив мощность сигнала от&nbsp;ближайших точек, которых обычно видно несколько, можно достаточно точно оценить положение смартфона или ноутбука.</p>

<span class="mt-enclosure mt-enclosure-image"><a href="http://www.ptitov.ru/blog/2008/06/11/wi2geo.png"><img alt="wi2geo.png" src="http://files.ptitov.ru/tmp/wi2geo-thumb-500x375.png" width="500" height="375" class="mt-image-center" style="text-align: center; display: block; margin: 0 auto 20px;"/></a></span>]]>
        <![CDATA[<p>Я&nbsp;пробовал использовать клиент для Windows на&nbsp;своем ноутбуке и&nbsp;для Windows Mobile на&nbsp;<a href="http://www.ptitov.ru/mt/mt-search.cgi?tag=iPAQ&blog_id=1">iPAQ 514</a>&nbsp;&#151; оба правильно показали мое местанахождение. Предполагается, что для Symbian и&nbsp;iPhone клиенты тоже будут</p>

<p>Сейчас Wi2Geo уже знает о&nbsp;16&nbsp;тысячах точек доступа, но,&nbsp;в&nbsp;основном, находящихся в&nbsp;центре Москвы. Однако их&nbsp;количество в&nbsp;базе все время увеличивается, похоже, что к&nbsp;открытию сервиса 7&nbsp;июля их&nbsp;станет намного больше. Их,&nbsp;кстати, можно увидеть на&nbsp;карте на&nbsp;главной странице (отображается только сто, чтобы увидеть больше, надо увеличивать карту), разделенные на&nbsp;частные открытые и&nbsp;закрытые, а&nbsp;также платный и&nbsp;бесплатный &laquo;Голден Вайфай&raquo;.</p>

<p>Есть, конечно, и&nbsp;социальная функциональность &mdash; сервис умеет показывать положение друзей, а&nbsp;создатели <a href="http://blog.wi2geo.ru/archives/6">обещают добавить</a> поиск ближайших кафе и&nbsp;возможность публикации своих перемещений.</p>

<p>Разработчики обещают, что <a href="http://blog.wi2geo.ru/archives/3">API сервиса</a> будет общедоступным после открытия, но&nbsp;бесплатным&nbsp;&mdash; лишь отчасти.</p>
]]>
    </content>
</entry>

<entry>
    <title>Разные типы рабочих дней</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2008/03/ballmer-days.html" />
    <id>tag:www.ptitov.ru,2008:/blog//1.24</id>

    <published>2008-03-17T03:47:19Z</published>
    <updated>2008-03-17T04:06:10Z</updated>

    <summary><![CDATA[Стив Балмер на&nbsp;MIX08&nbsp;рассказал Гаю Кавасаки про несколько типов своих рабочих дней. Стив Балмер: &laquo;У&nbsp;меня бывает три типа дней. Первый, я&nbsp;не&nbsp;в&nbsp;Редмонде, я&nbsp;с&nbsp;клиентами, и&nbsp;с&nbsp;ними я&nbsp;обычно нахожусь с&nbsp;примерно 7:30&nbsp;утра до&nbsp;20:00, потом сажусь на&nbsp;самолет, лечу в&nbsp;следующий город, инструктирую наших людей и&nbsp;провожу еще 11&nbsp;часов с&nbsp;клиентами....]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Жизнь" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="microsoft" label="microsoft" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="балмер" label="балмер" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="кавасаки" label="кавасаки" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="таймменеджмент" label="тайм-менеджмент" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>Стив Балмер на&nbsp;<a href="http://visitmix.com/2008/">MIX08</a>&nbsp;<a href="http://sessions.visitmix.com/?selectedSearch=KYN0802">рассказал Гаю Кавасаки</a> про несколько типов своих рабочих дней.</p>

<blockquote><a href="http://www.microsoft.com/presspass/exec/steve/2008/03-06MIX08.mspx">Стив Балмер</a>: &laquo;У&nbsp;меня бывает три типа дней. Первый, я&nbsp;не&nbsp;в&nbsp;Редмонде, я&nbsp;с&nbsp;клиентами, и&nbsp;с&nbsp;ними я&nbsp;обычно нахожусь с&nbsp;примерно 7:30&nbsp;утра до&nbsp;20:00, потом сажусь на&nbsp;самолет, лечу в&nbsp;следующий город, инструктирую наших людей и&nbsp;провожу еще 11&nbsp;часов с&nbsp;клиентами. И&nbsp;я&nbsp;становлюсь взволнованным. Для меня это зарядка.
<br /><br />
Второй тип дня я&nbsp;называю приемом у&nbsp;врача. Час за&nbsp;часом у&nbsp;меня совещания, один на&nbsp;один, групповое обсужение, раз, два, три. И&nbsp;они тоже заряжают, хотя и,&nbsp;обычно, немного утомительные.
<br /><br />
И&nbsp;третий тип дня, то&nbsp;что я&nbsp;называю днями, когда я&nbsp;могу по&nbsp;настоящему думать, писать и&nbsp;исследовать, когда у&nbsp;меня может быть 1-2&nbsp;встречи за&nbsp;день, но&nbsp;большая часть времени моя и&nbsp;я&nbsp;могу вникнуть в&nbsp;вопросы, созвониться с&nbsp;людьми, с&nbsp;которыми хочу поговорить, и&nbsp;получить возможность составить представление о&nbsp;том, что мы&nbsp;должны делать.&raquo;</blockquote>

<p>Интересный способ организовывать время. Надо будет попробовать.</p>

]]>
        
    </content>
</entry>

<entry>
    <title>Редактирование dialplan на HP iPAQ Voice Messenger 514</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2008/03/ipaq-514-dialplan.html" />
    <id>tag:www.ptitov.ru,2008:/blog//1.23</id>

    <published>2008-03-06T04:59:35Z</published>
    <updated>2008-03-06T05:44:47Z</updated>

    <summary><![CDATA[ Пока Кирилл Морозов разбирался со&nbsp;своим первым UNIX-телефоном, я&nbsp;разбирался со&nbsp;свежекупленным Windows-телефоном iPAQ 514&nbsp;Voice Messenger. Он&nbsp;заработал &laquo;из&nbsp;коробки&raquo; и&nbsp;без проблем подключился к&nbsp;нашей PBX на&nbsp;CommuniGate Pro, однако мне не&nbsp;понравился имеющийся по&nbsp;умолчанию dialplan. Dialplan&nbsp;&#151; это описание того, куда и&nbsp;в&nbsp;каком виде передаются набираемые телефонные номера....]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Железо" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="ipaq" label="iPAQ" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sip" label="SIP" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="voip" label="VoIP" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windowsmobile" label="Windows Mobile" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p><img src="http://h10010.www1.hp.com/wwpc/images/emea/ipaq-514-voice-messenger_190x170.jpg" width="170" height="190" alt="iPAQ 514" align="left" /> Пока Кирилл Морозов разбирался со&nbsp;<a href="http://l0rda.biz/2008/03/06/iphone-nedelya-ispolzovaniya/">своим первым UNIX-телефоном</a>, я&nbsp;разбирался со&nbsp;свежекупленным Windows-телефоном <a href="http://kravtsovsv.livejournal.com/140975.html">iPAQ 514&nbsp;Voice Messenger</a>. Он&nbsp;заработал &laquo;из&nbsp;коробки&raquo; и&nbsp;без проблем подключился к&nbsp;нашей <a href="http://www.bhost.ru/price/email.html">PBX на&nbsp;CommuniGate Pro</a>, однако мне не&nbsp;понравился <a href="http://www.ipaq514.ru/?p=136">имеющийся по&nbsp;умолчанию dialplan</a>. Dialplan&nbsp;&#151; это описание того, куда и&nbsp;в&nbsp;каком виде передаются набираемые телефонные номера.</p>

<p>Дело в&nbsp;том, что в&nbsp;моей записной книжке почти все номера записаны в&nbsp;международно-российском формате и&nbsp;имеют вид +7&nbsp;(495) 246-24-73. Чтобы их&nbsp;набирать по&nbsp;VoIP, стандартный dialplan (он&nbsp;хранится в&nbsp;скрытом файле \Windows\ipdialplan.xml) надо модифицировать.</p>
]]>
        <![CDATA[<p>Правила набора номеров в Windows Mobile описываются обычными регулярными выражениями. У каждого правила могут быть, помимо pattern, аттрибуты dial (формат набора номера), transfer (формат набора номера при перенаправлении звонка), display (формат отображения номера) и restrict, запрещающий использование этого номера в сотовой сети, IP-сети или для отправки SMS.</p>

<p>Секции IP address rules, SIP URI rules и Only digits можно оставить без изменений, там все хорошо и должно работать с любым VoIP-сервером.</p>

<p>Секции 11-digits rules и 10-digits rules описывают правила набора национальных номеров, по&nbsp;умолчанию&nbsp;&mdash; американских. Поэтому их надо заменить на&nbsp;российские (тут они набираются через &laquo;восьмерку&raquo;):</p>
<pre>    &lt;!-- 11-digits rules --&gt;
    &lt;rule pattern='7\s*-?\s*(\d{3})\s*-?\s*(\d{3})\s*-?\s*(\d{2})\s*-?\s*(\d{2})(\s*[Xx]\s*\d+)?'
        dial='sip:8\1\2\3\4@$host$'
        display='(\1) \2-\3-\4'
        transfer='sip:8\1\2\3\4@$host$'
        /&gt;
    &lt;rule pattern='7\s*-?\s*\((\d{3})\)\s*-?\s*(\d{3})\s*-?\s*(\d{2})\s*-?\s*(\d{2})(\s*[Xx]\s*\d+)?'
        dial='sip:8\1\2\3\4@$host$'
        display='(\1) \2-\3-\4'
        transfer='sip:8\1\2\3\4@$host$'
        /&gt;
    &lt;rule pattern='\+\s*7\s*-?\s*(\d{3})\s*-?\s*(\d{3})\s*-?\s*(\d{2})\s*-?\s*(\d{2})(\s*[Xx]\s*\d+)?'
        dial='sip:8\1\2\3\4@$host$'
        display='(\1) \2-\3-\4'
        transfer='sip:8\1\2\3\4@$host$'
        /&gt;
    &lt;rule pattern='\+\s*7\s*-?\s*\((\d{3})\)\s*-?\s*(\d{3})\s*-?\s*(\d{2})\s*-?\s*(\d{2})(\s*[Xx]\s*\d+)?'
        dial='sip:8\1\2\3\4@$host$'
        display='(\1) \2-\3-\4'
        transfer='sip:8\1\2\3\4@$host$'
        /&gt;
    &lt;!-- 10-digits rules --&gt;
    &lt;rule pattern='(\d{3})\s*(\d{3})\s*-?\s*(\d{2})\s*-?\s*(\d{2})(\s*[Xx]\s*\d+)?'
        dial='sip:8\1\2\3\4@$host$'
        display='(\1) \2-\3-\4'
        transfer='sip:8\1\2\3\4@$host$'
        /&gt;
    &lt;rule pattern='\((\d{3})\)\s*(\d{3})\s*-?\s*(\d{2})\s*-?\s*(\d{2})(\s*[Xx]\s*\d+)?'
        dial='sip:8\1\2\3\4@$host$'
        display='(\1) \2-\3-\4'
        transfer='sip:8\1\2\3\4@$host$'
        /&gt;</pre>

<p>Далее следует секция 7-digits rules, это правила набора местных номеров.</p>

<pre>    &lt;rule pattern='(\d{3})\s*-?\s*(\d{4})'
        dial='sip:\1\2@$host$'
        display='\1-\2'
        transfer='sip:\1\2@$host$'
        /&gt;
    &lt;rule pattern='(\d{3})\s*-?\s*(\d{2})\s*-?\s*(\d{2})'
        dial='sip:\1\2\3@$host$'
        display='\1-\2-\3'
        transfer='sip:\1\2\3@$host$'
        /&gt;</pre>

<p>Между правилами SIP URI и Only digits целесообразно добавить правила маршрутизации номеров, которые должны отправляться исключительно в сотовую сеть (например, сервисы оператора и аварийные службы).</p>

<pre>    &lt;!-- BeeLine Services --&gt;
    &lt;rule pattern='(06\d+)'
        display='\1'
        restrict='VoIP'
        /&gt;</pre>

<p>Последним правилом я добавил универсальный шаблон, подходящий для любых номеров в международном формате (напр., +44 552435657), к ним добавляется префикс 810.</p>

<pre>    &lt;!-- Universal Intl. pattern --&gt;
    &lt;rule pattern='\+(\d+)\D*(\d*)\D*(\d*)\D*(\d*)\D*(\d*)\D*(\d*)'
        dial='sip:810\1\2\3\4\5\6@$host$'
        display='+\1 \2\3\4\5\6'
        transfer='sip:810\1\2\3\4\5\6@$host$'
        /&gt;</pre>

<p>На самом деле это могло бы быть единственное изменение, но тогда бы не было красивого отображения российских телефонных номеров (ABC) XXX-XX-XX во время вызова :-)</p>

<p>Загружать dialplan на&nbsp;телефон можно любым способом, описанном в&nbsp;<a href="http://bizsupport.austin.hp.com/bc/docs/support/SupportManual/c01082684/c01082684.pdf">application notes</a> (просто скопировать нельзя), я&nbsp;применил <a href="http://msdn2.microsoft.com/en-us/library/ms889557.aspx">CAB provisioning format</a>. Dialplan помещается в&nbsp;файл _setup.xml, который затем архивируется cab&#146;ом, копируется на&nbsp;телефон и&nbsp;запускается. CAB-архив создается командой <a href="http://support.microsoft.com/kb/310618">cabarc</a> n dialplan.cab _setup.xml. В&nbsp;результате у&nbsp;меня получился <a href="http://www.ptitov.ru/blog/2008/03/06/mydp.cab">такой файл</a>.</p>

<p>С его установкой возникают непонятные проблемы&nbsp;&#151; если присвоить архиву расширение .cpf (как надо), то&nbsp;настройки не&nbsp;вносятся и&nbsp;возникает ошибка с&nbsp;правами доступа. Если сначала назвать его .cab, установить, затем переименовать в&nbsp;.cpf и&nbsp;запустить снова&nbsp;&#151; все работает.</p>]]>
    </content>
</entry>

<entry>
    <title>Почему в России хостинг дорогой, а на Западе -- дешевый</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2008/01/dreamhost-joyent.html" />
    <id>tag:www.ptitov.ru,2008:/blog//1.22</id>

    <published>2008-01-16T23:36:36Z</published>
    <updated>2008-01-17T00:56:18Z</updated>

    <summary><![CDATA[Многие опытные веб-разработчики уверены, что американский и&nbsp;европейский хостинг лучше и&nbsp;дешевле российского. Для этого в&nbsp;общем-то есть основания&nbsp;&#151; офисы там дешевле, серверы дешевле, нету дефицита квалифицированного персонала, Минсвязи и&nbsp;т.д. Но&nbsp;в&nbsp;последние дни англоязычный интернет сотрясается двумя шумными fuck up&#146;ами. Dreamhost по&nbsp;ошибке (кажется) взял...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Интернет" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="хостинг" label="хостинг" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>Многие опытные веб-разработчики уверены, что американский и&nbsp;европейский хостинг лучше и&nbsp;дешевле российского. Для этого в&nbsp;общем-то есть основания&nbsp;&#151; офисы там дешевле, серверы дешевле, нету дефицита квалифицированного персонала, Минсвязи и&nbsp;т.д.</p>

<p>Но&nbsp;в&nbsp;последние дни англоязычный интернет сотрясается двумя шумными fuck up&#146;ами. <a href="http://www.dreamhost.com">Dreamhost</a> по&nbsp;ошибке (кажется) взял у&nbsp;клиентов <a href="http://www.techcrunch.com/2008/01/15/dreamhost-overbills-customers-75-million-uses-homer-simpson-to-deliver-apology/">лишние 7,5&nbsp;миллионов долларов</a>, а&nbsp;файловый хостинг у&nbsp;<a href="http://www.joyent.com">Joyent</a> (бывший Textdrive) лежит <a href="https://help.joyent.com/index.php?pg=forums.posts&id=701&pc=9">уже несколько дней</a>.</p>]]>
        <![CDATA[
<p>Dreamhost по&nbsp;ошибке снял с&nbsp;кредитных карточек своих клиентов деньги за&nbsp;весь 2008&nbsp;год и&nbsp;сейчас <a href="http://blog.dreamhost.com/2008/01/15/um-whoops/">пытается отшутиться</a>. Несмотря на&nbsp;<a href="http://www.kip.ru/hosting/2006/09/post_10.html">открытость</a> и&nbsp;готовность подробно рассказать, почему так получилось, в&nbsp;комментариях много негатива. Деньги, кстати, уже вернули.</p>

<p>А&nbsp;у&nbsp;Joyent упал файловый хостинг в&nbsp;связи с&nbsp;&laquo;<a href="http://www.joyeur.com/2008/01/16/strongspace-and-bingodisk-update">нестабильностью работы оборудования, возникшей после обновления операционной системы</a>&raquo;. Пока не&nbsp;очень понятно, были&nbsp;ли бэкапы на&nbsp;сломавшемся сервере (а&nbsp;там 24&nbsp;Тб&nbsp;данных) и&nbsp;если да,&nbsp;то&nbsp;почему не&nbsp;нашлось возможности сделать их&nbsp;доступными за&nbsp;столько дней.</p>

<p>Все это выглядит совершенно диким и&nbsp;средневековым. Так ведь не&nbsp;бывает! Да&nbsp;еще на&nbsp;родине Тима Бернеса-Ли и&nbsp;Альберта Гора. Тем не&nbsp;менее, так бывает. Что самое удивительное&nbsp;&#151; на&nbsp;самом деле средний американский хостинг заметно хуже среднего российского. Это множество на&nbsp;первый взгляд мелких деталей, но&nbsp;небольшие различия вызваны совершенно разным подходом к&nbsp;тому, как должен быть устроен хостинг.</p>

<p>Например, в&nbsp;России хостинги обычно имеют <a href="http://peterhost.ru/highload_report.shtml">мощные средства автоматического (или хотя-бы автоматизированного) мониторинга</a> нагрузки, создаваемой каждом клиентом, которые делают так, что один клиент с&nbsp;&laquo;тяжелым&raquo; сайтом не&nbsp;может мешать работе остальных сайтов. На&nbsp;Западе популярен подход, когда такой сайт может тормозить работу соседних неделями, а&nbsp;мониторинг и&nbsp;прекращение работы &laquo;плохих&raquo; скриптов делается вручную.</p>

<p>Я&nbsp;не&nbsp;могу себе представить, чтобы на&nbsp;российском хостинге (да&nbsp;еще &laquo;<a href="http://www.joyent.com/connector/bingodisk/">защищенном от&nbsp;дисковых сбоев</a>&raquo;) не&nbsp;могли не&nbsp;то&nbsp;что забыть делать бэкапы&nbsp;&#151; восстановить функционирование сервиса в&nbsp;течение половины недели.</p>

<p>Я&nbsp;не&nbsp;могу себе представить, чтобы российский хостинг, общитавший своих клиентов, в&nbsp;ответ на&nbsp;все жалобы разместил у&nbsp;себя на&nbsp;сайте толстую старуху Шапокляк.</p>

<p>И&nbsp;это очень хорошо.</p>]]>
    </content>
</entry>

<entry>
    <title>Xen на amd64</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/12/xen-amd64.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.21</id>

    <published>2007-12-08T20:21:58Z</published>
    <updated>2007-12-21T15:04:50Z</updated>

    <summary><![CDATA[ Тестировал Xen на amd64 AKA x86-64. Общие впечатления&nbsp;&mdash; работает и весьма хорошо. Xen&nbsp;&#151; это так называемый монитор виртуальных машин. Он&nbsp;умеет запускать их&nbsp;как в&nbsp;режиме паравиртуализации (когда ядро виртуализируемой ОС&nbsp;модифицируется для взаимодействия с&nbsp;&laquo;родительской&raquo;), так и&nbsp;гипервизора (когда запускается полностью немодифицированная ОС&nbsp;с&nbsp;использованием аппаратной...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="UNIX" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="freebsd" label="freebsd" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="linux" label="linux" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="solaris" label="solaris" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="xen" label="xen" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="виртуализация" label="виртуализация" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p><img src="http://xen.xensource.com/images/globals/xen_logo.gif" align="left" /> Тестировал <a href="http://xen.xensource.com/">Xen</a> на amd64 AKA x86-64. Общие впечатления&nbsp;&mdash; работает и весьма хорошо.</p>

<p>Xen&nbsp;&#151; это так называемый монитор виртуальных машин. Он&nbsp;умеет запускать их&nbsp;как в&nbsp;режиме паравиртуализации (когда ядро виртуализируемой ОС&nbsp;модифицируется для взаимодействия с&nbsp;&laquo;родительской&raquo;), так и&nbsp;<a href="http://ru.wikipedia.org/wiki/%D0%93%D0%B8%D0%BF%D0%B5%D1%80%D0%B2%D0%B8%D0%B7%D0%BE%D1%80">гипервизора</a> (когда запускается полностью немодифицированная ОС&nbsp;с&nbsp;использованием аппаратной поддержки виртуализации процессором). У&nbsp;Xen есть и&nbsp;проприетарные аналоги&nbsp;&#151; <a href="http://www.microsoft.com/windowsserversystem/virtualserver/">Microsoft Virtual Server</a> и&nbsp;<a href="http://www.vmware.com/products/server/">VMWare Server</a>.</p>

<p>Я тестировал Xen на&nbsp;четырехядерном Intel Core2, под <a href="http://www.centos.org">CentOS 5</a>&nbsp;Linux (это на&nbsp;самом деле бесплатная сборка <a href="http://www.redhat.com">RHEL</a>, что почему-то <a href="http://www.centos.org/modules/smartfaq/faq.php?faqid=13">страшный секрет</a>). Еще мы&nbsp;его используем для своих нужд на&nbsp;Intel Xeon 5120, там тоже все аналогично.</p>

<p>Сначала о&nbsp;хорошем. Все работает быстро, по&nbsp;настоящему быстро. Это не&nbsp;VMWare Workstation бородатых лет с&nbsp;эмуляцией CPU, это полноценная виртуализация. Какой-то оверхед, конечно, есть, но&nbsp;он&nbsp;в&nbsp;пределах нескольких процентов. Линуксы, а&nbsp;я&nbsp;перепробовал с&nbsp;полдюжины дистрибутивов, работают отлично. И&nbsp;в&nbsp;режиме паравиртуализации, и&nbsp;в&nbsp;режиме гипервизора, как угодно. Windows Server 2003&nbsp;(i386, разумеется, в&nbsp;режиме гипервизора)&nbsp;&#151; тоже хорошо, но&nbsp;на&nbsp;одном VCPU. Заставить его видеть несколько ядер и&nbsp;при этом не&nbsp;зависать при установке у&nbsp;меня не&nbsp;получилось. Windows Server 2008&nbsp;(под рукой тоже был только i386)&nbsp;&#151; ставится хорошо, с ACPI и многоядерностью, но сеть не работает.</p>

<p>Теперь о&nbsp;грустном. Вообще-то везде написано, что должны работать NetBSD и&nbsp;OpenSolaris. Однако ядро NetBSD 3&nbsp;для работы с&nbsp;режимом паравиртуализации на&nbsp;amd64&nbsp;никто не&nbsp;собирал (и&nbsp;похоже оно будет только в&nbsp;релизе NetBSD 4), в&nbsp;режиме гипервизора NetBSD упорно отказывался видеть консоль, в&nbsp;том числе последовательную. OpenSolaris вроде&nbsp;бы должен работать, на&nbsp;сайте есть <a href="http://www.opensolaris.org/os/community/xen/docs/linux-dom0/">подробные инструкции</a> и&nbsp;для i386 и&nbsp;для amd64. Но&nbsp;не&nbsp;заработал. Впрочем это, вероятно, было связано со&nbsp;старой версией Xen 3.0.3, а&nbsp;в&nbsp;3.1&nbsp;или 3.0.4&nbsp;все должно заводиться.</p>

<p>Разработкой поддержки Xen <a href="http://www.ru.freebsd.org">FreeBSD</a>, столь популярной в&nbsp;России, похоже, занимается лишь один человек&nbsp;&#151; Кип Мэйси. Но&nbsp;он&nbsp;делает очень много хорошего для FreeBSD и&nbsp;кроме этого, так что на&nbsp;своевременную сборку ядер даже для i386, не&nbsp;говоря уж&nbsp;об&nbsp;amd64&nbsp;его явно не&nbsp;хватает.</p>

<p>В общем, ситуация с виртуализацией весьма оптимистичная, а у нас теперь можно купить <a href="http://www.bhost.ru/price/dedicated/">динамические выделенные серверы</a> на Xen. Приходите :-)</p>

P.S. Не обошлось, конечно, без смешного:<br />]]>
        <![CDATA[<a href="http://www.fotarea.ru/pavel/pic/001pdr4t/g205" ><img src="http://www.fotarea.ru/pavel/pic/001pdr4t" border='0' width="500" height="332" alt="Linux" /></a>]]>
    </content>
</entry>

<entry>
    <title>Локальный мониторинг процессов</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/11/local-hearthbeat-monitor.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.19</id>

    <published>2007-11-03T18:22:47Z</published>
    <updated>2007-11-03T18:33:08Z</updated>

    <summary>Иногда возникает необходимость осуществлять мониторинг сервиса не только удаленно, но и локально. Ну, например, автоматически перезапускать падающий время от времени сервис. Такие задачи очень удобно писать на shell:...</summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="UNIX" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="shell" label="shell" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>Иногда возникает необходимость осуществлять мониторинг сервиса не только <a href="http://www.administrating.ru/2007/06/17/service-monitoringa-serverov/">удаленно</a>, но и локально. Ну, например, автоматически перезапускать падающий время от времени сервис. Такие задачи очень удобно писать на shell:</p>]]>
        <![CDATA[<pre>#!/bin/sh

# Service checker by Pavel Titov
PIDFILE=/var/run/proftpd.pid
RESTART=proftpd

if [ ! -f $PIDFILE ]
then
  echo Pidfile $PIDFILE not exists, restarting
  $RESTART
  exit
fi

PID=`cat $PIDFILE`
if ! kill -0 $PID
then
  echo Process looks dead, restarting
  $RESTART
fi</pre>

<p>Этот скрипт проверяет наличие PID-файла в указанном в переменной PIDFILE месте и, если он есть, пытается убедиться что процесс запущен. Если это не удалось, процесс перезапускается командой из RESTART.</p>

<p>В RESTART лучше указать команды для очистки всего, что могло остататься за упавшим процессом, например, процессов-детей. Как-то так: <tt>killall proftpd && sleep 10; killall -9 proftpd && sleep 5; proftpd</tt>. Приведенный пример пытается штатно завершить работу всех процессов proftpd сигналом TERM, затем, если это не удалось, пытается убить их сигналом KILL, и лишь после этого перезапускает сервис.</p>]]>
    </content>
</entry>

<entry>
    <title>FreeBSD и ZFS</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/11/freebsd-zfs.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.18</id>

    <published>2007-11-02T20:18:45Z</published>
    <updated>2007-11-02T20:57:53Z</updated>

    <summary><![CDATA[Я&nbsp;давно жду релиза FreeBSD 7&nbsp;(а&nbsp;он&nbsp;уже близко), чтобы опробовать в&nbsp;production давно портируемый на&nbsp;нее из&nbsp;OpenSolaris ZFS. ZFS&nbsp;&#151; это и&nbsp;файловая система и&nbsp;volume manager. Вместо томов там пулы (storage pools), которые могут быть нарезаны на&nbsp;тысячи файловых систем каждый. ZFS не&nbsp;нужен fsck, она не&nbsp;может быть...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="UNIX" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="freebsd" label="freebsd" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="geom" label="geom" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="zfs" label="zfs" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>Я&nbsp;давно жду релиза <a href="http://www.ru.freebsd.org/releases/7.0R/schedule.html">FreeBSD 7</a>&nbsp;(а&nbsp;он&nbsp;<a href="http://lifelog.spb.ru/blog/2007/10/25/freebsd-70-beta1-dostupna-dlya-skachivaniya/">уже близко</a>), чтобы опробовать в&nbsp;production давно портируемый на&nbsp;нее из&nbsp;OpenSolaris <a href="http://www.opensolaris.org/os/community/zfs/">ZFS</a>.</p>

<p>ZFS&nbsp;&#151; это и&nbsp;файловая система и&nbsp;volume manager. Вместо томов там пулы (storage pools), которые могут быть нарезаны на&nbsp;тысячи файловых систем каждый. ZFS не&nbsp;нужен fsck, она не&nbsp;может быть поврежденной простым отключением электричества. В&nbsp;ZFS есть новый RAID&nbsp;&#151; RAID-Z, улучшенный RAID-5. В&nbsp;ZFS можно делать снапшоты (shapshots)&nbsp;&#151; запомнить состояние файловой системы в&nbsp;определенный момент и&nbsp;в&nbsp;случае чего потом к&nbsp;нему вернуться. В&nbsp;общем, ZFS кажется весьма приличной системой, на&nbsp;уровне коммерческих volume manager&#146;ов&nbsp;и&nbsp;администрировать ее&nbsp;<a href="http://www.opensolaris.org/os/community/zfs/intro/">одно удовольствие</a>.</p>

<p>Но&nbsp;не&nbsp;все так хорошо. :-) Михаил Монашёв не&nbsp;поленился <a href="http://michael.mindmix.ru/168-958-rezul-taty-testirovanija-graid5-graid3-gcache-i-raidz.zhtml">провести тестирование</a> и&nbsp;получил не&nbsp;совсем радостные результаты. ZFS с&nbsp;raidz, конечно, оказалась быстрее graid3 и&nbsp;graid5, но&nbsp;уступила связке gmirror, gstripe и&nbsp;gjournal.</p>]]>
        
    </content>
</entry>

<entry>
    <title>CAPTCHA</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/11/captcha.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.17</id>

    <published>2007-11-02T19:28:50Z</published>
    <updated>2007-11-02T19:46:13Z</updated>

    <summary><![CDATA[Mr.KTO нашел прекрасное: &laquo;Для обхода защиты спамеры используют стриптизершу&#133; Собранные трояном решения задач CAPTCHA отсылаются на&nbsp;сервер в&nbsp;Израиле для использования.&raquo; В&nbsp;общем-то технология старая, о&nbsp;ее&nbsp;онлайновой реализации я&nbsp;читал не&nbsp;меньше пяти лет назад и,&nbsp;кажется, в&nbsp;той&nbsp;же &laquo;Компьюленте&raquo;. Странно что ее&nbsp;кто-то использует&nbsp;&#151; ведь CAPTCHA давно научились...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Интернет" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="безопасность" label="безопасность" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>Mr.KTO <a href="http://mrkto.com/captcha/">нашел прекрасное</a>: &laquo;Для обхода защиты спамеры используют стриптизершу&#133; Собранные трояном решения задач CAPTCHA отсылаются на&nbsp;сервер в&nbsp;Израиле для использования.&raquo;</p>

<p>В&nbsp;общем-то технология старая, о&nbsp;ее&nbsp;онлайновой реализации я&nbsp;читал не&nbsp;меньше пяти лет назад и,&nbsp;кажется, в&nbsp;той&nbsp;же &laquo;Компьюленте&raquo;. Странно что ее&nbsp;кто-то использует&nbsp;&#151; ведь CAPTCHA давно <a href="http://rstblog.com/archives/97">научились распознавать</a>. При этом создатели сайтов зачем-то стремятся сделать ее&nbsp;как можно более нечитаемой для людей (а&nbsp;машинам после этого капчу читать обычно легче). Особенно преуспел в&nbsp;капчастроении <a href="http://brad.livejournal.com/2148447.html">Брэд Фицпатрик</a>.</p>

<p>И&nbsp;в&nbsp;общем-то мы&nbsp;все понимаем, что сделать reverse engineering любого алгоритма, имея достаточное количество образцов входных и&nbsp;выходных данных&nbsp;&#151; задача реализуемая. А&nbsp;для защиты от&nbsp;простого спама в&nbsp;гостевых книгах и&nbsp;подобного пока отлично подходят и&nbsp;неграфические вопросы, например, на&nbsp;одном из&nbsp;сайтов я&nbsp;предлагал пользователям выбрать текущий день недели.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Электрокнига lBook</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/10/lbook-ereader.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.16</id>

    <published>2007-10-30T22:25:45Z</published>
    <updated>2007-10-30T23:02:00Z</updated>

    <summary><![CDATA[В&nbsp;Progadget пишут о&nbsp;том, что за&nbsp;границей поступила в&nbsp;продажу электрокнига Cybook Gen3&nbsp;за&nbsp;350&nbsp;$ и&nbsp;сокрушается, что в&nbsp;России ее&nbsp;пока не&nbsp;продают. Однако не&nbsp;все так плохо&nbsp;&#151; в&nbsp;России уже продаются по&nbsp;меньшей мере две электронные книги на&nbsp;электронных чернилах: lBook eReader и&nbsp;Sony Reader, хотя и&nbsp;немного подороже (от&nbsp;10000&nbsp;рублей). Первый я&nbsp;и&nbsp;купил себе...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Железо" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="гаджеты" label="гаджеты" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>В&nbsp;Progadget пишут о&nbsp;том, что за&nbsp;границей <a href="http://www.progadget.ru/2007/10/30/4">поступила в&nbsp;продажу</a> электрокнига Cybook Gen3&nbsp;за&nbsp;350&nbsp;$ и&nbsp;сокрушается, что в&nbsp;России ее&nbsp;пока не&nbsp;продают.</p>

<p>Однако не&nbsp;все так плохо&nbsp;&#151; в&nbsp;России уже продаются по&nbsp;меньшей мере две электронные книги на&nbsp;электронных чернилах: <a href="http://www.lbook.ru">lBook eReader</a> и&nbsp;<a href="http://products.sel.sony.com/pa/prs/index.html">Sony Reader</a>, хотя и&nbsp;немного подороже (от&nbsp;10000&nbsp;рублей). Первый я&nbsp;и&nbsp;купил себе недавно по&nbsp;совету <a href="http://flymio.ya.ru/">Ромы Борисоглебского</a> в&nbsp;качестве замены умершему КПК, на&nbsp;котором раньше читал электронные книжки.</p>

<p>Ощущения&nbsp;&#151; потрясающие. <a href="http://www.lbook.ru/howitwork.php">Электрочернила</a> выглядят почти как настоящая бумага (правда, не&nbsp;очень белая), изображение формируется только за&nbsp;счет рассеиваемого света, внутренняя подсветка отсутствует. В&nbsp;результате, у&nbsp;электрокниг весьма большой ресурс аккумулятора, одной зарядки хватает на&nbsp;7-10&nbsp;тысяч страниц, это примерно месяц активного чтения.</p>

<p>Вместе с&nbsp;eReader дается SD-карта на&nbsp;512&nbsp;Мб,&nbsp;адаптер USB-SD и&nbsp;диск с&nbsp;классическими произведениями на&nbsp;русском, украинском и&nbsp;английском. Книга понимает TXT, HTML, а&nbsp;также собственный формат WOLF, для создания файлов в&nbsp;котором есть <a href="http://www.lbook.ru/soft.php">конвертеры</a> и&nbsp;драйвер виртуального принтера. Если установить <a href="http://www.oscomp.ru/tmp/lreader.rar">альтернативную читалку</a>, eReader будет понимать и&nbsp;книги в&nbsp;<a href="http://www.fictionbook.org">формате FB2</a>.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Про делегирование обратных зон</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/10/classless-reverse-dns.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.14</id>

    <published>2007-10-29T21:48:51Z</published>
    <updated>2007-10-29T22:13:53Z</updated>

    <summary><![CDATA[Распространено мнение, что обратные зоны (в in-addr.arpa) можно делегировать только классами (минимум&nbsp;&mdash; класс&nbsp;C, 256&nbsp;адресов). Это конечно-же неправда&nbsp;&mdash; CNAME в&nbsp;обратных зонах работает точно так же, как и в&nbsp;прямых, а&nbsp;значит можно делегировать зоны хоть по&nbsp;одному адресу: $ORIGIN 2.0.192.in-addr.arpa. @ IN SOA my-ns.my.domain....]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Интернет" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="dns" label="dns" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>Распространено мнение, что обратные зоны (в in-addr.arpa) <a href="http://domaindb.blogspot.com/2007/10/dns.html">можно делегировать только классами</a> (минимум&nbsp;&mdash; класс&nbsp;C, 256&nbsp;адресов). Это конечно-же неправда&nbsp;&mdash; CNAME в&nbsp;обратных зонах работает точно так же, как и в&nbsp;прямых, а&nbsp;значит можно делегировать зоны хоть по&nbsp;одному адресу:</p>

<xmp>   $ORIGIN 2.0.192.in-addr.arpa.
   @       IN      SOA     my-ns.my.domain. hostmaster.my.domain. (...)
   ;...
   ;  <<0-127>> /25
   0/25            NS      ns.A.domain.
   0/25            NS      some.other.name.server.
   ;
   1               CNAME   1.0/25.2.0.192.in-addr.arpa.
   2               CNAME   2.0/25.2.0.192.in-addr.arpa.
   3               CNAME   3.0/25.2.0.192.in-addr.arpa.</xmp>

<p>При использовании <a href="http://www.isc.org/index.pl?/sw/bind/index.php">bind</a> удобнее не прописывать каждый отдельный IP в файле зоны, а переложить это на DNS-сервер, в нем есть <a href="http://kimmo.suominen.com/docs/notes-rfc2317/">макрос $GENERATE</a>, умеющий генерировать однотипные записи автоматически, при чтении файла зоны.</p>

<p>Если ваш провайдер говорит что не умеет делегировать безклассовые зоны меньше 256 адресов&nbsp;&mdash; покажите ему <a href="http://faqs.org/rfcs/rfc2317.html">RFC 2317</a>, сделайте мир лучше.</p>]]>
        
    </content>
</entry>

<entry>
    <title>MySQL, хостинг и надежность</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/10/mysql-storage-stability.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.13</id>

    <published>2007-10-28T19:48:31Z</published>
    <updated>2007-10-28T21:58:41Z</updated>

    <summary><![CDATA[Piom пишет про ValueHost: &laquo;C недавних пор, очень часто начались лаги в работе сервера БД на котором хранятся наши данные, из-за этого большенство проектов просто выходили из строя. ... При общении с суппортом мы получали стандартное "исправим".&raquo; Создается впечатление, что...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Интернет" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="innodb" label="innodb" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="myisam" label="myisam" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="mysql" label="mysql" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p><a href="http://www.blog.okd-center.ru/2007/10/19/sluzhba-sapporta-valuehost/">Piom пишет про ValueHost</a>:</p>
<blockquote>&laquo;C недавних пор, очень часто начались лаги в работе сервера БД на котором хранятся наши данные, из-за этого большенство проектов просто выходили из строя.
...
При общении с суппортом мы получали стандартное "исправим".&raquo;</blockquote>

<p>Создается впечатление, что у&nbsp;VH&nbsp;или нет мониторинга MySQL ни&nbsp;в&nbsp;каком виде (во&nbsp;что я&nbsp;не&nbsp;готов поверить&nbsp;&#151; размеры не&nbsp;те)&nbsp;или у&nbsp;конкретного пользователя проблемы сохраняются после решения их&nbsp;на&nbsp;глобальном уровне. Удивительно, но&nbsp;в&nbsp;MySQL при нештатном завершении работы сервера (например, из-за сбоя электропитания) отдельные таблицы могут выходить из&nbsp;строя.</p>]]>
        <![CDATA[<p>Понятно, что у&nbsp;условно плохого хостера такие проблемы могут случаться три раза в&nbsp;день, а&nbsp;у&nbsp;условно хорошего&nbsp;&#151; раз в&nbsp;три года, но,&nbsp;мне кажется, лучше иметь о&nbsp;них представление заранее.</p>

<p>Случаются они при использовании хранилища <a href="http://dev.mysql.com/doc/refman/5.1/en/myisam-storage-engine.html">MyISAM</a> (а&nbsp;обычно используют именно его). Дело в&nbsp;том, что в&nbsp;MyISAM нет транзакций, то&nbsp;есть, когда нужно изменить что-то в&nbsp;таблице, он&nbsp;берет и&nbsp;меняет это в&nbsp;файле таблицы, а&nbsp;потом меняет файл индекса. Если во&nbsp;время изменений процесс mysql умрет&nbsp;&#151; после его перезапуска на&nbsp;все обращения к&nbsp;таблице будет получаться ошибка вида &laquo;Got error %d from storage engine&raquo;.</p>

<p>Конформистское решение&nbsp;&#151; быть готовым к&nbsp;проблеме, стараться ничего не&nbsp;писать в&nbsp;таблицы или делать так, что ошибки при работе с&nbsp;отдельными часто изменяемыми таблицами (ну,&nbsp;например, таблице сессий) не&nbsp;будут приводить к&nbsp;фатальной ошибке на&nbsp;всех страницах сайта. Если проблема случилась&nbsp;&#151; как можно раньше (может быть даже автоматически, но&nbsp;только один раз) пытаться выполнить запрос <a href="http://dev.mysql.com/doc/refman/5.1/en/repair-table.html">REPAIR TABLE</a>. Или, если права на&nbsp;MySQL этого не&nbsp;позволяют, писать письмо в&nbsp;службу поддержки.</p>

<p>Нонкорформистское&nbsp;&#151; мигрировать на&nbsp;<a href="http://dev.mysql.com/doc/refman/5.1/en/innodb.html">InnoDB</a>. Этих проблем там нет. Есть <a href="http://community.livejournal.com/lj_dev/670215.html" title="disk cache issues">другие</a>, но&nbsp;они менее вероятны. InnoDB несовместим с&nbsp;MyISAM&nbsp;&#151; там база данных будет по-настоящему реляционной, не&nbsp;будет иногда полезного INSERT DELAYED, да&nbsp;и&nbsp;до&nbsp;сих пор не&nbsp;все хостеры его поддерживают. Подробнее о&nbsp;различиях транзакционных и&nbsp;нетранзакционных хранилищ хорошо написано в&nbsp;<a href="http://dev.mysql.com/doc/refman/5.1/en/storage-engine-compare-transactions.html">документации по&nbsp;MySQL</a>.</p>]]>
    </content>
</entry>

<entry>
    <title>Яндекс.Вебмастер бета</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/10/yandex-webmaster.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.12</id>

    <published>2007-10-27T03:30:17Z</published>
    <updated>2007-10-30T22:23:17Z</updated>

    <summary><![CDATA[Благодаря Асе Патрышевой, любезно приславшей приглашение&nbsp;&#151; спасибо!, у&nbsp;меня появилась возможность рассмотреть только что запустившийся сервис Яндекса&nbsp;&#151; &laquo;Яндекс.Вебмастер&raquo;. Задуманный по&nbsp;аналогии с&nbsp;Google Webmaster Central, новый сервис должен показывать вебмастеру, как сайт видится &laquo;Яндексом&raquo;. Выглядит он&nbsp;не&nbsp;таким функциональным, но&nbsp;самое нужное уже есть и&nbsp;работает&nbsp;&#151; можно...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Интернет" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="поиск" label="поиск" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="яндекс" label="яндекс" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p>Благодаря Асе Патрышевой, любезно приславшей приглашение&nbsp;&#151; спасибо!, у&nbsp;меня появилась возможность рассмотреть <a href="http://help.yandex.ru/webmaster/?id=995323">только что запустившийся сервис</a> Яндекса&nbsp;&#151; &laquo;<a href="http://webmaster.yandex.ru/wmconsole/">Яндекс.Вебмастер</a>&raquo;.</p>

<p>Задуманный по&nbsp;аналогии с&nbsp;<a href="http://www.google.com/webmasters/">Google Webmaster Central</a>, новый сервис должен показывать вебмастеру, как сайт видится &laquo;Яндексом&raquo;. Выглядит он&nbsp;не&nbsp;таким функциональным, но&nbsp;самое нужное уже есть и&nbsp;работает&nbsp;&#151; можно посмотреть, какие страницы проиндексированы, где произошли ошибки и&nbsp;когда робот последний раз был на&nbsp;сайте, а&nbsp;также распределение страниц по&nbsp;разделам.</p>]]>
        <![CDATA[<span class="mt-enclosure mt-enclosure-image"><a href="http://www.ptitov.ru/blog/2007/10/27/yw1.html" onclick="window.open('http://www.ptitov.ru/blog/2007/10/27/yw1.html','popup','width=693,height=286,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.ptitov.ru/blog/2007/10/27/yw1-thumb-500x206.png" width="500" height="206" alt="yw1.png" class="mt-image-center" style="text-align: center; display: block; margin: 0 auto 20px;" /></a></span>

<p>Четверть миллиона страниц и&nbsp;ошибок?! Что&nbsp;же это может быть? Смотрим проиндексированные страницы и&nbsp;видим&#133;</p>

<span class="mt-enclosure mt-enclosure-image"><img alt="yw3.png" src="http://www.ptitov.ru/blog/2007/10/27/yw3.png" width="451" height="217" class="mt-image-center" style="text-align: center; display: block; margin: 0 auto 20px;"/></span>

<p>&#133;множество страниц, которых никогда не&nbsp;было на&nbsp;сайте. Но&nbsp;&laquo;Яндекс&raquo; не&nbsp;теряет надежды их&nbsp;обнаружить. Вероятно, он&nbsp;когда-то узнал о&nbsp;них по&nbsp;ссылкам на&nbsp;какой-нибудь склеившийся с&nbsp;<a href="http://www.bhost.ru">хостингом BHOST.RU</a> сайт. Но&nbsp;от&nbsp;отображения нашего сайта на&nbsp;отключенных пользовательских доменах мы&nbsp;давно отказались, непонятно, почему &laquo;Яндекс&raquo; не&nbsp;забыл о&nbsp;склееном сайте.</p>

<p>29 октября Платон Щукин ответил, что убрать &laquo;лишние&raquo; страницы можно, запретив их индексирование в robots.txt.</p>

<p>Вообще, информация об&nbsp;ошибках выдается подробно:</p>

<span class="mt-enclosure mt-enclosure-image"><img alt="yw2.png" src="http://www.ptitov.ru/blog/2007/10/27/yw2.png" width="464" height="101" class="mt-image-center" style="text-align: center; display: block; margin: 0 auto 20px;"/></span>

<p>Предупреждения о&nbsp;неверном content-type и&nbsp;кодировках очень порадовали&nbsp;&#151; в&nbsp;отличие от&nbsp;404&nbsp;ошибки по&nbsp;логам их&nbsp;не&nbsp;обнаружить.</p>

<p>&laquo;Яндекс&raquo; можно только поблагодарить за&nbsp;полезный сервис и&nbsp;пожелать успехов в&nbsp;его развитии и&nbsp;доведении до&nbsp;публичной версии&nbsp;&#151; сейчас сервисом пользуются, судя по&nbsp;сквозной нумерации сайтов, сотни три вебмастеров.</p>

<p>31 октября я написал отдельный пост со ссылками на <a href="http://www.ptitov.ru/blog/2007/10/yakrevedko-invites.html">блоггеров, раздающих инвайты</a>.</p>]]>
    </content>
</entry>

<entry>
    <title>Хороший тон в электронной переписке</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2007/10/email-netiquette.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.9</id>

    <published>2007-10-27T01:38:28Z</published>
    <updated>2007-10-27T02:25:10Z</updated>

    <summary>О правилах хорошего тона в электропочте и сетевом этикете уже не раз писалось достаточно, иногда даже подражая &quot;Евгению Онегину&quot;. Однако, мир меняется и, вместе с массовым проникновением электропочты в жизнь, меняются принятые правила. Про некоторые малоизвестные факты мне и хотелось...</summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Интернет" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="электропочта" label="электропочта" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="этикет" label="этикет" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[О правилах хорошего тона в электропочте и сетевом этикете уже не раз писалось достаточно, иногда даже <a href="http://www.kulichki.com/znatoki/klub/join/rules_a2.html">подражая "Евгению Онегину"</a>. Однако, мир меняется и, вместе с массовым проникновением электропочты в жизнь, меняются принятые правила. Про некоторые малоизвестные факты мне и хотелось тут написать.<br /><br /><b>Чем отделять подпись от письма</b><br /><br />Если вы пишите электронные письма в формате "простой текст" (plain text), то перед подписью следует написать строчку "-- ". Именно так - два дефиса и пробел. Тогда умные почтовые клиенты, например, <a href="http://www.gmail.com/">GMail</a> или<a href="http://www.mozilla-europe.org/ru/products/thunderbird/"> Thunderbird</a>, будут при ответе автоматически ее отрезать.<br /><br />Это мелочь, но она здорово экономит время корреспондента при ответе.<br /><br /><b>Где отвечать</b><br /><br />Исторически сложилось так, что отвечать на электронные письма было принято под цитатой, разбивая ее на фрагменты. Мне этот способ до сих пор кажется оптимальным, особенно, если в переписке параллельно обсуждаются несколько тем. Но есть одна вещь, которую при ответе снизу делать нельзя ни в коем случае: оставлять нестертой подпись автора цитируемого письма. Тогда он может просто не заметить этот кусок ответа (в лучшем случае) или его почтовый клиент помешает корректно процитировать письмо, обрезав все что ниже подписи.<br /><br />Современный путь - отвечать над цитатой. Так отвечать очень практично, особенно при обсуждении одного-двух вопросов. Это быстро и удобно, не надо думать об избыточном цитировании, стирании подписи и прочем. Сейчас он становится все больше и больше популярным, особенно в письмах с форматированием. Единственное, о чем нельзя забывать - в подписи или не должно быть "-- " или подпись должна быть под цитируемым текстом, в самом-самом конце письма.<br /><br /><b>Ответить всем<br /><br /></b>Если письмо касается нескольких человек, их принято указывать в поле "копия" (Cc). Тогда почтовый сервер автоматически направит им копии письма. Обратите внимание, что они смогут узнать друг о друге из заголовков письма.<br /><br />Если вам приходит такое письмо, хорошим тоном будет при ответе нажать не кнопку "ответ" (reply), а кнопку "ответить всем" (reply all). Тогда ответ автоматически будет направлен и получателям исходного письма, которые также как и отправитель могут быть заинтересованы в ответе. В результате вашему корреспонденту не придется пересылать им ответ вручную. Кроме того, при необходимости они всегда смогут аналогичным образом подключиться к переписке.<br /><br /><b>Не игнорируйте письма<br /><br /></b>Худшее, что можно сделать с письмом - проигнорировать его. На письмо всегда нужно отвечать хоть как-то. Если оно переслано (forwarded) для ответа другому сотруднику, написать об этом и дать его контактную информацию. Если ответ не получается дать письменно и нужно поговорить по телефону - написать об этом.<br /><br />Несмотря на очевидную недопустимость игнорирование писем, превращающих электронную почту из надежного бизнес-решения в голубиную почту, его практикуют многие российские компании. Иногда выбирают средний путь - отвечают две недели (например, мне так отвечал российский филиал Diners Club и банк ВТБ24). Я уверен, что быстрее получил бы ответ на старую добрую телеграмму.<br /><br />Давайте вместе избавим себя и окружающих от бессмысленных звонков "а вы получили мое электронное письмо?"!<br />]]>
        
    </content>
</entry>

<entry>
    <title>Перенос доменов в зонах .msk.ru, .spb.ru, msk.su, spb.su к другому провайдеру</title>
    <link rel="alternate" type="text/html" href="http://www.ptitov.ru/blog/2003/09/redelegate-mskru-spbru-msksu-spbsu.html" />
    <id>tag:www.ptitov.ru,2007:/blog//1.8</id>

    <published>2003-09-20T01:34:02Z</published>
    <updated>2007-10-27T01:36:17Z</updated>

    <summary><![CDATA[Статья была написана для &laquo;Хостинг обзора&raquo;. Процедуры регистрации и переноса домена в&nbsp;этих зонах существенно отличаются от&nbsp;прочих и&nbsp;зачастую совсем неочевидны. Для начала следует выяснить, кто считается владельцем зоны и&nbsp;уже на&nbsp;этом этапе заметно первое отличие&nbsp;&#151; персона, указанная как администратор в&nbsp;whois не&nbsp;имеет никаких...]]></summary>
    <author>
        <name>Pavel Titov</name>
        
    </author>
    
        <category term="Интернет" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="dns" label="dns" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="релком" label="релком" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.ptitov.ru/blog/">
        <![CDATA[<p><em>Статья была написана для &laquo;<a href="http://www.hostobzor.ru">Хостинг обзора</a>&raquo;.</em></p>

<p>Процедуры регистрации и переноса домена в&nbsp;этих зонах существенно отличаются
от&nbsp;прочих и&nbsp;зачастую совсем неочевидны.</p>

<p>Для начала следует выяснить, кто считается владельцем зоны и&nbsp;уже на&nbsp;этом
этапе заметно первое отличие&nbsp;&#151; персона, указанная как администратор
в&nbsp;whois не&nbsp;имеет никаких прав на&nbsp;зону. &laquo;Настоящим&raquo; владельцем
является владелец адреса электронной почты, указанного в&nbsp;так называемой
SOA-записи зоны на DNS-сервере, которому проделегирован домен. Если этот DNS-сервер
недоступен, то&nbsp;&laquo;Релком&raquo; производит поиск владельца по&nbsp;не&nbsp;вполне
понятному собственному
алгоритму.</p>]]>
        <![CDATA[<blockquote><i>Делегированием называется передача полномочий на&nbsp;создание
поддоменов, установку адресов, настройку почты и&nbsp;другие подобные операции
какому-либо DNS-серверу. SOA-запись&nbsp;&#151; часть настроек DNS-сервера,
как правило отличающихся для разных зон, содержит название основного DNS-сервера,
e-mail администратора (а&nbsp;в&nbsp;контесте региональных доменов, регистрируемых
&laquo;Релкомом&raquo;&nbsp;&#151; владельца), версию зоны, настройки кэширования
зоны на&nbsp;DNS-серверах интернет-провайдеров, настройки синхронизации
для вторичных DNS-серверов.</i></blockquote>

<p>Проще всего узнать этот адрес зайдя на сайт <a
href="http://www.relcom.spb.ru/cgi-bin/whois.cgi">relcom.spb.ru</a>.
Кроме того, есть более быстрый способ, для получения SOA-записи в&nbsp;большинстве
операционных систем достаточно набрать в&nbsp;командной строке
<tt>nslookup -query=soa домен</tt>. Итак, предположим, что адрес вы узнали.
Он&nbsp;будет играть очень важную роль при переносе домена, ведь именно туда будет
отправлен запрос на&nbsp;подтверждение переноса. Если адрес принадлежит провайдеру,
то&nbsp;его следует известить о&nbsp;том, что вы собираетесь перенести домен
к&nbsp;другому хостинг-провайдеру, если указан ваш адрес e-mail, то&nbsp;запрос
придёт вам и&nbsp;вы будете должны написать ответ с&nbsp;подтверждением переноса
(как это сделать будет написано в&nbsp;письме).</p>

<p>Следующий шаг&nbsp;&#151; создание зоны на&nbsp;DNS-сервере нового хостинг-провайдера.
Попросите ответственных лиц-сотрудников провайдера (обычно это служба поддержки)
создать зону для вашего домена, разрешив ее &laquo;трансфер&raquo; (часто используется
выражение &laquo;разрешить AXFR&raquo;, это то&nbsp;же самое) по&nbsp;крайней мере
для IP 193.124.22.65. При&nbsp;этом не&nbsp;забудьте узнать адреса DNS-серверов провайдера.</p>

<p>Заключительный шаг &#151; написание и&nbsp;отправка заявки в&nbsp;&laquo;Релком&raquo;.
Заявку необходимо писать по&nbsp;форме <a
href="http://relcom.net/INFO/FORMS/direct-zone-form">RIPE-049</a>, в&nbsp;полях
admin-c, zone-c, tech-c может быть одна персона, более того, там можно указать
просто ваш nic-handle, оканчивающийся на -RELCOM или -RIPN (если есть). IP-адреса
DNS-серверов в&nbsp;заявке можно не&nbsp;указывать и, более того, <em>лучше</em>
не&nbsp;указывать. Заполненную заявку следует отправить на&nbsp;адрес
<a href="mailto:noc-dns@relcom.net">noc-dns@relcom.net</a>.</p>]]>
    </content>
</entry>

</feed>
