Я смотрю на erlang и на golang в плане производительности тупого текста go показывает лучшие результаты, но это ничего не значит.
Все таки хотелось бы услышать комментарии про erlang и go.
--
Вы получили это сообщение, поскольку подписаны на группу Erlang по-русски.
Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес erlang-russia...@googlegroups.com.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу erlang-...@googlegroups.com.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
--
Я смотрю на erlang и на golang в плане производительности тупого текста go показывает лучшие результаты, но это ничего не значит.
Все таки хотелось бы услышать комментарии про erlang и go.
--
мне кажется ты просто что-то не так готовишь, поэтому erlang у тебя и сдает
Выкладывайте исходники бенчмарка и кто-то может подражает что сделано не так. Рассуждать в вакууме про производительность бесполезно
"Голый" erlang практически никому не нужен, а в Go ничего похожего на
OTP по качеству и покрытию задач просто нет. Сравнивать же язык со
специализированной операционной системой достаточно бесполезно.
Если академически сравнить именно языки, то в Go умудрились выстрелить
себе в ногу: допустив возможность разделяемой памяти, они похерили
семантику значений (против семантики мест), и тем самым
1) сильно усложнили любую масштабную разработку (ошибка типа C++: в
любой большой codebase будут применены все возможные механизмы языка,
в том числе и вредные);
1a) Следовательно, применение Go - мелкие утилиты/сервера/сервисы,
ничего крупного. Было бы хорошо, если бы это был осознанный выбор ("мы
хотим делать маленькие сервисы, общающиеся по общепринятым
протоколам"), но, похоже, это нечаянное следствие из сделанных
решений.
Вот именно пятница. Представьте вот пришел с работы и снова вязлся за erlang и go. Хочу визитку попробовать сделать. И что - то захотелось бенчмарк сделать столько запросов выдержит мой сайтик.
Смотрю golang держит в 3-4 раза больше и ядра не грузит сильно а вот erlang все загрузил и обработать может меньше соединений. Дудмаю дальше мб дело в фреймворке ковбои или веб сервере, решил написать в группу мб че полезное скажут. Я конечно понимаю какие плюсы erlang перед go но меня интересует производителость на 1 физической машине с 8 ядрами.
Любой более менее квалифицированный программист знает, что с помощью ab сегодня можно тестировать только PHP магазин под апачом, и то не факт, что ab справится.- прям как громко. ab пойдет для простых тестов и не обяз. под apache
Когда Макс Сохацкий решил что-то померять, он собрал целый репозиторий- на днях соберу
On Oct 5, 2013, at 09:21, Николай Измайлов <nekul...@gmail.com> wrote:Любой более менее квалифицированный программист знает, что с помощью ab сегодня можно тестировать только PHP магазин под апачом, и то не факт, что ab справится.- прям как громко. ab пойдет для простых тестов и не обяз. под apache
Когда Макс Сохацкий решил что-то померять, он собрал целый репозиторий- на днях соберу
Могу только процитировать Стива Виноски из Basho: ваш бенчмарк — не бенчмарк, если он крутится на одной машине в течение 20 минут.
Ну и люди. Сайт визитка - это что в голову пришло то и написал. Никто не собирался даже ее и делать. Какой дибил будет делать сайт визитку на erlang или go ?
Короче из темы где хотелось получить коменты по сравнению языков в производительности получилось гавно!!!
«Представьте вот пришел с работы и снова вязлся за erlang и go. Хочу визитку попробовать сделать. И что - то захотелось бенчмарк сделать столько запросов выдержит мой сайтик.»Да это чтоб веселее было, вы ушли от основной мысли "производительность erlang и golang"
Не знаю что это такое, но спорить не буду.
--
Я смотрю на erlang и на golang в плане производительности тупого текста go показывает лучшие результаты, но это ничего не значит.
Все таки хотелось бы услышать комментарии про erlang и go.
--
некоторая бедность в плане библиотек и некоторые вопросы.
специфичными вещами вроде eventfd/splice и менее специфичными как
sendfile ?
ram(допустим, на машине 2Гб памяти, а на диске - 2Тб аниме).
и вот следующих 512Кб у нас не в page cache. как это будет выглядеть
внутри(то что эрланговский процесс "залипнет" - понятно) и снаружи(
beam) ?
пугаетнекоторая бедность в плане библиотек и некоторые вопросы.Что конкретно пугает? Этот миф я слышу ещё с тех времен, когда сел за рельсы.«мало библиотек, мало библиотек».
Мне кажется, что эрланг для веба не годится прежде всего в силу своей иммутабельности.Там, где я в руби напишу:@author.books и код автоматически сходит в базу данных, подкачает список книжек и положит его в instace variable объекта @author, там в эрланге я напишу кучу интересного и полезного кода, вывалив наружу все подобные кишки.
Оно полезно для сурового бекенда, но когда надо быстро делать бизнес-логику, начинается беда.
>Я вот делаю стриминговый серверКлючевой момент. Это очень узкая ниша. Каких библиотек нет? Ну, например:-почта. Год назад, когда понадобилось SMTP, пришлось писать самим — всё существовавшее не работало толком;-аналоги TagSoup. Распарсить невалидный HTML нечем, удобных модификаторов/CSS-селекторов нет;-OAuth(2). Удачи реализовывать с нуля!-миграции для БД;-биндинги к ImageMagick или аналогам;-парсер/компилятор Markdown;-биндинги к Datomic;-векторная/матричная алгебра;-CLP (например, core.logic в Clojure).
>конечно же мы говорим о том, что все умные и аппаратные рейды уже выкинули из сервера к чертовой материЭто для, опять же, крайне узкой ниши линейного чтения больших кусков с диска? В большинстве случаев нужно рандомное чтение/запись мелких кусков (будь то записи в БД или картинки). Удачи тягаться с полкой от какого-нибудь NETAPP'а.>Такое поведение и есть правильное и никакой либы на джаве ты для этого не найдешь.JFYI: core.async для Clojure предоставляет first class bounded channels с разными типами буферизации. Велосипедить на этом поведение при перегрузке гораздо веселее, чем пытаться отслеживать длины очередей сообщений, например.>в эрланге есть либа для mmap. Предлагаю поискать аналогичную для джавыБолее того, есть ещё, например,аналог который в Erlang'е построить *крайне* нетривиально.>эрланг для веба не годится прежде всего в силу своей иммутабельностиClojure иммутабельная и справляется. Scala иммутабельная и справляется. Haskell иммутабельный и справляется. Дело явно не в этом.
On Tuesday, October 8, 2013 11:08:34 AM UTC+4, Max Lapshin wrote:Мне кажется, что эрланг для веба не годится прежде всего в силу своей иммутабельности.Там, где я в руби напишу:@author.books и код автоматически сходит в базу данных, подкачает список книжек и положит его в instace variable объекта @author, там в эрланге я напишу кучу интересного и полезного кода, вывалив наружу все подобные кишки.Оно полезно для сурового бекенда, но когда надо быстро делать бизнес-логику, начинается беда.
А "распределённые локи" - это о чём речь?С уважением,Кирилл Заборский.
А "распределённые локи" - это о чём речь?
С уважением,Кирилл Заборский.
8 октября 2013 г., 15:50 пользователь Dmitrii Dimandt <dmi...@dmitriid.com> написал:
-почта. Год назад, когда понадобилось SMTP, пришлось писать самим — всё существовавшее не работало толком;
-аналоги TagSoup. Распарсить невалидный HTML нечем, удобных модификаторов/CSS-селекторов нет;
-OAuth(2). Удачи реализовывать с нуля!
-миграции для БД;
-биндинги к ImageMagick или аналогам;
-парсер/компилятор Markdown;
-биндинги к Datomic;
-векторная/матричная алгебра;
-CLP (например, core.logic в Clojure).
пришлось серьёзно допиливатьвозможно сырое
>И для большинства задач этот клей вообще-то не нужен :)следует читать как для большинства твоих задач он не нужен.
Думаю врядли кто то будет спорить что у Ерланга есть фичи изза которых он незаменим. И часто Erlang незаменим именно как клей. Не думаю что это плохо. Часто приходиться в имеющийся проект на чем угодно оклеивать ерлангом для сохранения темпов развития или для сохранения проекта.
А если клей не нужен но его используют и ноюут что нет библиотек то цель явно не в том чтобы доехать.
> можно взять Ruby/Python и доехать за N/10 времени.Думаю это то же аргумент из категории управления проектом.
в стиле так же можно взять и доехать за N*10 времени. Кстати ровно так же можно перекинуть на оутсорс куда нибудь в азию и жить на 5%.
Не думаю что эффективность организации и управления так уж сильно коррелирует с выбранным языком. В данном контексте ленивых можно просто выкинуть на мороз например. И туда же можно отправить того кто выбрал данную марку "клея" когда вообще был нужен "ацетон".
--
В этом смысле эрланг похож на другие узкоспециализированные штуки,
типа того же CFEngine: местами криво и неуклюже, ничего готового нет,
все руками, но другое на тех задачах, которые решает инструмент,
просто не работает.