<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Комментарии к записи: Perl vs C</title>
	<atom:link href="http://ugnich.wordpress.com/2007/11/01/perl_vs_c/feed/" rel="self" type="application/rss+xml" />
	<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/</link>
	<description>Практика интернет-бизнеса: идеи и технологии</description>
	<lastBuildDate>Thu, 27 Nov 2008 13:28:26 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Автор: j0k3r</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-241</link>
		<dc:creator>j0k3r</dc:creator>
		<pubDate>Sun, 18 Nov 2007 21:41:01 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-241</guid>
		<description>А что, спасибо.. есть повод задуматься :)</description>
		<content:encoded><![CDATA[<p>А что, спасибо.. есть повод задуматься <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Zim</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-230</link>
		<dc:creator>Zim</dc:creator>
		<pubDate>Tue, 13 Nov 2007 09:25:23 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-230</guid>
		<description>Автору спасибо за тестирование и скрипты доступные для скачивания! В интернете все в основном устраивают &quot;священные войны&quot; по-поводу того какой язык &quot;самый-самый&quot;, а Ugnich Anton взял да и протестировал в &quot;боевый условиях&quot; взаимодействие Perl и C с MySQL. 

Браво!</description>
		<content:encoded><![CDATA[<p>Автору спасибо за тестирование и скрипты доступные для скачивания! В интернете все в основном устраивают &laquo;священные войны&raquo; по-поводу того какой язык &laquo;самый-самый&raquo;, а Ugnich Anton взял да и протестировал в &laquo;боевый условиях&raquo; взаимодействие Perl и C с MySQL. </p>
<p>Браво!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Ugnich Anton</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-219</link>
		<dc:creator>Ugnich Anton</dc:creator>
		<pubDate>Fri, 09 Nov 2007 00:35:04 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-219</guid>
		<description>2generator2003:
&lt;blockquote&gt;почему тогда большинство высоконагрузочных сервисов типа mail.ru на перл пхп и других скриптах?&lt;/blockquote&gt;
На чем эти сервисы написаны и как работают — мы с вами точно знать не можем.

&lt;blockquote&gt;Во время исполнения С приложения...&lt;/blockquote&gt;
Почитайте про &lt;a href=&quot;http://ru.wikipedia.org/wiki/FastCGI&quot; rel=&quot;nofollow&quot;&gt;FastCGI&lt;/a&gt;. ;)

&lt;blockquote&gt;скриптам лучше поручить много мелких запросов, но оч часто, а СИ коду большие объёмы данных но редко&lt;/blockquote&gt;
С точностью до наоборот. Частые одинаковые запросы должны обрабатывать быстрые FastCGI-процессы, а редкие и разные обращения — обычные скрипты.

&lt;blockquote&gt;рекомендую точно выяснить у гуру...&lt;/blockquote&gt;
Никогда про таких не слышал. ;) Знаю только КЕНгуру. :)</description>
		<content:encoded><![CDATA[<p>2generator2003:</p>
<blockquote><p>почему тогда большинство высоконагрузочных сервисов типа mail.ru на перл пхп и других скриптах?</p></blockquote>
<p>На чем эти сервисы написаны и как работают — мы с вами точно знать не можем.</p>
<blockquote><p>Во время исполнения С приложения&#8230;</p></blockquote>
<p>Почитайте про <a href="http://ru.wikipedia.org/wiki/FastCGI" rel="nofollow">FastCGI</a>. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<blockquote><p>скриптам лучше поручить много мелких запросов, но оч часто, а СИ коду большие объёмы данных но редко</p></blockquote>
<p>С точностью до наоборот. Частые одинаковые запросы должны обрабатывать быстрые FastCGI-процессы, а редкие и разные обращения — обычные скрипты.</p>
<blockquote><p>рекомендую точно выяснить у гуру&#8230;</p></blockquote>
<p>Никогда про таких не слышал. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Знаю только КЕНгуру. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: generator2003</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-218</link>
		<dc:creator>generator2003</dc:creator>
		<pubDate>Thu, 08 Nov 2007 23:50:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-218</guid>
		<description>Значит так а почему тогда большинство высоконагрузочных сервисов типа mail.ru на перл пхп и других скриптах???
не помню где читал почему для веба используют именно скрипты. Во время исполнения С приложения порождается поток а он занимает память и процессорное время.(я могу немного ошибаться рекомендую точно выяснить у гуру dklab.ru например :) ) Вот так. Поэтому скриптам лучше поручить много мелких запросов, но оч часто, а СИ коду большие объёмы данных но редко ))
Автор ищи больше инфы!</description>
		<content:encoded><![CDATA[<p>Значит так а почему тогда большинство высоконагрузочных сервисов типа mail.ru на перл пхп и других скриптах???<br />
не помню где читал почему для веба используют именно скрипты. Во время исполнения С приложения порождается поток а он занимает память и процессорное время.(я могу немного ошибаться рекомендую точно выяснить у гуру dklab.ru например <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) Вот так. Поэтому скриптам лучше поручить много мелких запросов, но оч часто, а СИ коду большие объёмы данных но редко ))<br />
Автор ищи больше инфы!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Ugnich Anton</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-207</link>
		<dc:creator>Ugnich Anton</dc:creator>
		<pubDate>Sat, 03 Nov 2007 21:14:19 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-207</guid>
		<description>2Vinny: mysql ведь тоже не в дефолтной конфигурации. ;)
2Виктор: ну хоть бы пару слов по теме, а то на спам похоже. :)</description>
		<content:encoded><![CDATA[<p>2Vinny: mysql ведь тоже не в дефолтной конфигурации. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
2Виктор: ну хоть бы пару слов по теме, а то на спам похоже. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Vinny</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-206</link>
		<dc:creator>Vinny</dc:creator>
		<pubDate>Sat, 03 Nov 2007 18:20:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-206</guid>
		<description>2Ugnich Anton: я предполагал что вставка строки в базу будет занимать существенное  время работы программы...Видимо, по крайней мере для перла, это не так... Что ж, рад за mysql, шустро :)</description>
		<content:encoded><![CDATA[<p>2Ugnich Anton: я предполагал что вставка строки в базу будет занимать существенное  время работы программы&#8230;Видимо, по крайней мере для перла, это не так&#8230; Что ж, рад за mysql, шустро <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Виктор</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-205</link>
		<dc:creator>Виктор</dc:creator>
		<pubDate>Sat, 03 Nov 2007 18:08:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-205</guid>
		<description>Интересная статья!</description>
		<content:encoded><![CDATA[<p>Интересная статья!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Ugnich Anton</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-204</link>
		<dc:creator>Ugnich Anton</dc:creator>
		<pubDate>Fri, 02 Nov 2007 23:10:54 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-204</guid>
		<description>2Igor Gerdler: да, один экземпляр. Разница небольшая есть, nginx ведь запросы в очередь ставит. Ну а я старался по-ближе к реальным боевым действиям.

Что касается тестирования, прошу меня простить, но вряд ли смогу сейчас этим заняться. Кусок кода, который мы рассматриваем — это часть проекта, запуск которого намечен на понедельник. Надеюсь, вы понимаете... :)
В принципе, мои исходники у вас есть, может быть, вы сами проведете небольшой тест?</description>
		<content:encoded><![CDATA[<p>2Igor Gerdler: да, один экземпляр. Разница небольшая есть, nginx ведь запросы в очередь ставит. Ну а я старался по-ближе к реальным боевым действиям.</p>
<p>Что касается тестирования, прошу меня простить, но вряд ли смогу сейчас этим заняться. Кусок кода, который мы рассматриваем — это часть проекта, запуск которого намечен на понедельник. Надеюсь, вы понимаете&#8230; <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
В принципе, мои исходники у вас есть, может быть, вы сами проведете небольшой тест?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Igor Gerdler</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-203</link>
		<dc:creator>Igor Gerdler</dc:creator>
		<pubDate>Fri, 02 Nov 2007 22:36:40 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-203</guid>
		<description>Антон, в дополнение предлагаю померять производительность модифицированного кода:

#!/usr/bin/perl

use strict;
use DBI;
use CGI::Fast;

my $dbh=DBI-&gt;connect(&quot;dbi:mysql:dbname=db;host=localhost&quot;,&quot;login&quot;,&quot;passw&quot;);
$dbh-&gt;{mysql_auto_reconnect}=1;
my $sth = $dbh-&gt;prepare(&#039;INSERT INTO table(f1,f2) VALUES (?,?)&#039;);

FCGI: while(my $q=new CGI::Fast()) {
    my $id=$q-&gt;param(&#039;id&#039;) &#124;&#124; 0;
    if($id&gt;0) {
      if( $sth-&gt;execute( $id, INET_ATON($ENV{&#039;REMOTE_ADDR&#039;}) ) eq &#039;0E0&#039; ) { print &quot;Status: 403 Forbidden\n\n&quot;; }
        else { print &quot;Status: 200 OK\n\n&quot;; }
    } else { print &quot;Status: 500 Internal Server Error\n\n&quot;; }
}

Только не относительно perl и C, а относительно Вашего и этого варианта. При условии разных REMOTE_ADDR, результаты могут несколько изменится.

И для чего использовать INET_ATON, разве REMOTE_ADDR на нагруженном сервере может быть доменным именем?</description>
		<content:encoded><![CDATA[<p>Антон, в дополнение предлагаю померять производительность модифицированного кода:</p>
<p>#!/usr/bin/perl</p>
<p>use strict;<br />
use DBI;<br />
use CGI::Fast;</p>
<p>my $dbh=DBI-&gt;connect(&laquo;dbi:mysql:dbname=db;host=localhost&raquo;,&raquo;login&raquo;,&raquo;passw&raquo;);<br />
$dbh-&gt;{mysql_auto_reconnect}=1;<br />
my $sth = $dbh-&gt;prepare(&#8216;INSERT INTO table(f1,f2) VALUES (?,?)&#8217;);</p>
<p>FCGI: while(my $q=new CGI::Fast()) {<br />
    my $id=$q-&gt;param(&#8216;id&#8217;) || 0;<br />
    if($id&gt;0) {<br />
      if( $sth-&gt;execute( $id, INET_ATON($ENV{&#8216;REMOTE_ADDR&#8217;}) ) eq &#8216;0E0&#8242; ) { print &laquo;Status: 403 Forbidden\n\n&raquo;; }<br />
        else { print &laquo;Status: 200 OK\n\n&raquo;; }<br />
    } else { print &laquo;Status: 500 Internal Server Error\n\n&raquo;; }<br />
}</p>
<p>Только не относительно perl и C, а относительно Вашего и этого варианта. При условии разных REMOTE_ADDR, результаты могут несколько изменится.</p>
<p>И для чего использовать INET_ATON, разве REMOTE_ADDR на нагруженном сервере может быть доменным именем?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Igor Gerdler</title>
		<link>http://ugnich.wordpress.com/2007/11/01/perl_vs_c/#comment-202</link>
		<dc:creator>Igor Gerdler</dc:creator>
		<pubDate>Fri, 02 Nov 2007 22:17:16 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ugnich.com/2007/11/01/perl_vs_c/#comment-202</guid>
		<description>Антон, Вы не указали, сколько использовалось FastCGI экземпляров. Я предположил, что один (это нормальный, с моей точки зрения, вариант), тогда непонятно, зачем использовать 10 одновременных обращений, т.к. разницы с одним обращением не будет никакой. Если количество экземпляров 10, не могу согласиться, что это &quot;нормальное значение для эмуляции пиковой загрузки&quot;. Возможно 100 (или лучше 256, как максимальное значение для Apache при компиляции по умолчанию - хоть какое-то оправдание), но никак не 10.</description>
		<content:encoded><![CDATA[<p>Антон, Вы не указали, сколько использовалось FastCGI экземпляров. Я предположил, что один (это нормальный, с моей точки зрения, вариант), тогда непонятно, зачем использовать 10 одновременных обращений, т.к. разницы с одним обращением не будет никакой. Если количество экземпляров 10, не могу согласиться, что это &laquo;нормальное значение для эмуляции пиковой загрузки&raquo;. Возможно 100 (или лучше 256, как максимальное значение для Apache при компиляции по умолчанию &#8211; хоть какое-то оправдание), но никак не 10.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
