Какие недостатки можно найти в использовании Erlang? - PullRequest
16 голосов
/ 05 марта 2009

Я рассматриваю Эрланга как потенциал для моего будущего проекта. Мне нужен веб-сервер с высокой степенью масштабируемости и высокой надежностью (да, что за проект?), Чтобы принимать запросы HTTP, но не обслуживать HTML. У нас есть тысячи распределенных клиентов (других систем, а не пользователей), которые будут отправлять двоичные данные в центральный кластер серверов для автономной обработки. Ответы будут очень короткими, успех, сбой, код ошибки, минимальное количество данных. Мы хотим использовать HTTP, поскольку это наш лучший шанс обойти брандмауэры.

Учитывая эту ограниченную информацию о проекте, можете ли вы указать какие-либо недостатки, которые могут возникнуть при использовании такой технологии, как Erlang? Например, я понимаю, что возможности обработки текста в Erlang могут оставить желать лучшего.

Ваши комментарии приветствуются. Спасибо.

Ответы [ 5 ]

10 голосов
/ 05 марта 2009

Звучит как идеальный кандидат на такой язык, как Эрланг. Свойства масштабирования языка очень хороши, но если вы беспокоитесь о возможностях обработки данных, вам не следует. Это очень мощный язык со многими библиотеками, доступными для разработчиков. Это старый язык, и он интенсивно использовался / тестировался в прошлом, поэтому все, что вы хотите сделать, возможно, уже сделано в некоторой степени.

5 голосов
/ 08 марта 2009

Erlang обеспечивает масштабируемость и надежность, но из определения вашего проекта вы не указываете, какой тип обработки текста вам понадобится.

Я думаю, что основным ограничением Эрланга может быть поиск опытных разработчиков в вашем регионе. Проведите исследование о наличии архитекторов и программистов Erlang.

Если вы собираетесь учить себя или ваши разработчики изучают это на работе, имейте в виду, что это совсем другой способ кодирования и что, хотя базовая документация хороша, многие люди хотят, чтобы было больше примеров. Конечно, очень активное сообщество легко восполняет это.

5 голосов
/ 05 марта 2009

Убедитесь, что вы используете версию Erlang R11B5 или новее! Более ранние версии erlang не обеспечивали возможность тайм-аута tcp-отправок. Это приводит к тому, что заблокированные или злонамеренные клиенты могут выполнять DoS-атаку на ваше приложение, отказываясь получать данные, которые вы им отправляете, тем самым блокируя процесс отправки.

См. Выпуск OTP-6684 из Замечания к выпуску R11B5 .

3 голосов
/ 06 марта 2009

Я понимаю обработку текста Эрланга Возможности могут оставить что-то быть желанным.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * проект 'EEP' (Erlang Enhancement Proposal) в настоящее время находится в стадии разработки, но собирается включить его в основной поток поддержки Erlang / OTP.

1 голос
/ 22 марта 2014

Я столкнулся с некоторыми проблемами с производительностью чтения Redis из Erlang. Вот мой вопрос . Я склонен думать, что причина в написанном на Erlang модуле, который имеет проблемы при обработке тонны строк во время связи с Redis.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...