[Moscow.pm] Сравнение языков
Dmitry Smal
mialinx на gmail.com
Чт Фев 12 02:48:53 PST 2015
Ну если у нас perl работает на С (XS) web-сервере, использует XS
драйвер для доступа в базу, не делает ничего сложно и не выделяет память..
Тогда да. Взять параметр из Plack::Request и приклеить его к SQL
запросу - дают те самые 5-10%.
On 02/12/2015 01:09 PM, Анатолий Гришаев wrote:
> 12.02.2015 12:00, Daniel Podolsky пишет:
>>> А почему не реалистично сравнивать надо соответственно
>> потому, что противоречит всему личному опыту
> Про какой личный опыт ты говоришь?
>
> Я говорю про свой когда некоторое время назад я поспорил с
> профессиональным сишником, что на задаче web server + возможно + база
> С и perl в плане производительности одинаково.
> Мы написали по программе он на С, а я на Perl.
> Получилось одинаково с разницей ~5-10%.
> Причем он не поверил и продолжил её оптимизировать и угробил кучу
> времени но улучшить результат сильно у него не получилось.
>
>>> Например там Go обгоняет mojolicious, это треды, а plack это
>>> асинхронщина.
>> и?
> А когда я переписал свою перловую программу на async я получил
> существенный прирост "попугаев" и показав своему оппоненту
> программу и результаты спор выиграл.
>>
>>> Что доказывает, что язык на быстродействие оказывает минимальное
>>> влияние.
>> а что Вы называете "языком"?
>
> А вы можете запустить java без jvm?
>
> А для чего нужно разделять язык и jvm на которой оно исполняется?
> Вы можете показать как запустить Perl на jvm? или java на pvm?
>
> В perl есть такая штука как XS и если в программе есть узкое место
> можно переписать эту маленькую часть получить большой выигрыш
> производительности.
>
> И это на 100% работает, а данном случае имееть более 3000 "попугаев"
> это явный оверкилл для подавляющего числа проэктов.
> А для AnyEvent этого может даже не понадобиться.
> Скорее всего Вы упретесь раньше в базу, в архитектуру, в сеть гораздо
> раньше, чем в производительность Perl как языка и его pvm.
>
>>
>> vm, на которой программа исполняется - вот что оказывает максимальное
>> влияние.
>>
>> можно ли vm отделить от языка? (jvm -можно)
>
> А какой опыт? Всякие вычисления я проделываю через XS и мне
> необходимость в этом возникает гораздо гораздо реже, чем мне хочется.
> А переплюнуть XS с помощью jvm уже не получиться.
>
> А если хочеться острых ощущений в Perl есть возможность переопределить
> все операции на уровне расширения и это почти тривиально.
> Т.е. можно для перла написать свою pvm, если хочется.
> А вы можете написать свою jvm для java, чтобы это работало и было быстро?
>
>
Подробная информация о списке рассылки Moscow-pm