<div dir="ltr">Кстати, хотел заодно написать в чем вообще смысл максимально тюнить отдельную компоненту.<div><br><div>Дело в том, что Perl + EV способен обработать 40-50k rps на простом бинарном протоколе.</div><div>соответственно, я считаю, что это, так сказать, "внутреннее сопротивление" перла, и соответственно подняться выше этих показателей уже очень и очень сложно (без XS фактически невозможно).</div>
<div style><br></div><div>Если мы рассматриваем базовый компонент http-сервера, то мы имеем следующую картину:</div><div>допустим, есть пред. версия, со своими 3k rps. Я могу навернуть в нее еще кучку объектов, какой-то логики, и все равно это буден, ну, скажем, 2.7k rps. Вроде-бы проседание небольшое.</div>
<div><br></div><div>Если эту же логику я воткну в новую версию, то я получу приблизительно те-же 2.8-3k rps. Проседание громадное.</div><div><br></div><div>Но! Если мы рассмотрим какую-то очень простую задачу, которая не будет сильно осложнять работу сервера (а это вполне может быть какой-то сложный XS), то разница в итоговом приложении будет очевидна: один ограничен потолком в 7.7k, другой в 3k.<br>
<div><br></div><div><div>Аналогия с электрикой здесь подобная. Если полезная нагрузка значительно превышает внутреннее сопротивление, то мы не заметим разницы между новой версией и старой. А если полезная нагрузка сопоставима с внутр. сопротивлением, или даже меньше его, то разница весьма ощутима.</div>
<div>Вобщем измерение "тока" проверяется на "коротком замыкании".</div><div style>Но не ожидайте в реальном приложении тех-же показателей. Просто при разработке приложения нужно знать теоретический потолок, чтобы понимать насколько ваше приложение хорошо написано.<br>
</div><div style>Если ваше приложение не заметит разницы между AE::HTTPD и AE::HTTP::Server, то скорее всего вы не умеете писать эффективный код.</div><div><br></div><div class="gmail_extra">-- <br>Best wishes,<br>Vladimir V. Perepelitsa aka Mons Anderson<br>
<<a href="mailto:inthrax@gmail.com">inthrax@gmail.com</a>>, <<a href="mailto:mons@cpan.org">mons@cpan.org</a>><br><a href="http://github.com/Mons">http://github.com/Mons</a>
</div></div></div></div></div>