Подтвердить что ты не робот

Какие недостатки можно найти в использовании Erlang?

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

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

Ваши комментарии оценены. Спасибо.

4b9b3361

Ответ 1

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

Ответ 2

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

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

Ответ 3

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

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

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

Ответ 4

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

Проект starling уже обеспечивает базовую поддержку юникода, и в настоящее время в проекте есть EEP (предложение по улучшению Erlang), но в чтобы привести его в основное русло поддержки Erlang/OTP.

Ответ 5

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